2017-11-30 9 views
-1

私はタイムスタンプのインデックスを持つデータフレームを持っています。私は2001-01-01の後にタイムスタンプインデックスを持つすべての行を削除したいと思います。いくつかのグーグルの後、私はこれを取得:タイムスタンプのインデックスとPythonの固定日付を比較します

df.index[1].date() < pd.datetime.strptime('20010101', "%Y%m%d").date()) 

それは最初のインデックス未満2001-01-01であることを示しているとして、それが正常に動作します。

だから私は喜んに適用:

df.index.date() < pd.datetime.strptime('20010101', "%Y%m%d").date() 

、代わりにこの得た:

TypeError: 'numpy.ndarray' object is not callable.

あなたに私が入力したときにインデックスは、どのように見えるかの意味を与えるために:

df.index[1] 

返信:

Timestamp('1964-01-03 00:00:00') 
+2

作業中のコードのサンプルを追加できますか?変数の初期化などのように? – Marco

答えて

0

インデックスを正しく設定しているかどうかはわかりません。

日付を使用してデータフレームをサブセット化できます。 https://chrisalbon.com/python/pandas_time_series_basics.html

import pandas as pd 

data = {'date': ['2014-05-01 18:47:05.069722', '2014-05-01 18:47:05.119994', '2014-05-02 18:47:05.178768', '2014-05-02 18:47:05.230071', '2014-05-02 18:47:05.230071', '2014-05-02 18:47:05.280592', '2014-05-03 18:47:05.332662', '2014-05-03 18:47:05.385109', '2014-05-04 18:47:05.436523', '2014-05-04 18:47:05.486877'], 
     'battle_deaths': [34, 25, 26, 15, 15, 14, 26, 25, 62, 41]} 
df = pd.DataFrame(data, columns = ['date', 'battle_deaths']) 
df['date'] = pd.to_datetime(df['date']) 
df.index = df['date'] 
df.drop(['date'], axis = 1, inplace = True) 

df2 = df['2014-05-03':] 
+0

df2 = df ['2014-05-03':]このコード行は、私が探しているものです! –

関連する問題