2017-10-02 4 views
0

어떻게 든 데이터 프레임에서 날짜를 필터링하는 데 문제가 있습니다. 데이터 프레임에 loc을 사용했지만 어떻게 든 작동하지 않고 데이터 프레임에 전체 데이터를 수신합니다. 코드는 다음과 같습니다Dats pandas dataframe (python)에 필터를 적용하십시오.

Index(['FACT_DATE', 'Values'], dtype='object') 

왜 내가 dataframe를 슬라이스 할 수 없습니다

  FACT_DATE Values 
0  2015-12-01  0.91582 
1  2015-12-02  0.882980 
2  2015-12-03  0.848790  
... 

가 나는 또한 색인을 확인 :

data_dataframe.loc['2015-12-01':'2015-12-31'] 
print(data_dataframe) 

dataframe은 다음과 같습니다?

답변

1

필요 DatetimeIndex 때문에 :

#if necessary convert to datetime 
data_dataframe['FACT_DATE'] = pd.to_datetime(data_dataframe['FACT_DATE']) 
#set column to index 
data_dataframe = data_dataframe.set_index('FACT_DATE') 

#change data for not match all rows 
data_dataframe = data_dataframe.loc['2015-12-01':'2015-12-02'] 
print(data_dataframe) 
      Values 
FACT_DATE   
2015-12-01 0.91582 
2015-12-02 0.88298 
+0

고마워요. 그것이 내가 찾고 있었던 것이다. – JonDoe