2014-02-14 7 views
2

'만료 시간 및 날짜'타임 스탬프가 포함 된 팬더 데이터 프레임이 있습니다. 유효 기간과 날짜 사이에 특정 최대 차이가있는 행을 필터링하려고합니다. fr.date 내가 timedelta 값을 얻을 수 있지만, 이러한 FR [timedelta (fr.expiration-fr.date) < = 육십일]timedeltas에 대한 팬더 데이터 프레임

+1

fr.expiration-fr.date <= timedelta (days = 60) - 도움이 될까요? – sashkello

+0

문제를 설명하는 장난감 예제를 포함해야합니다. –

답변

2

에 대한 같은 필터 기준을 얻는 방법을 모른다 - 은 fr.expiration를 수행 할 때 당신이 비교하려고하는 60 일 동안 timedelta (days = 60)라는 timedelta 객체를 만들고이를 필터에 사용하십시오. 그리고 이미 뺄셈에서 timedelta 객체를 얻는다면 timedelta로 다시 작성하는 것은 불필요한 것처럼 보입니다.

그리고 마지막으로 비교할 시간 표시기의 표시를 확인하십시오. 감사 sashkello @

2

,

filterfr = filterfr[filterfr.expiration-filterfr.date <= numpy.timedelta64(datetime.timedelta(days = 60))] 

트릭을했다.

filterfr.expiration-filterfr.date 

는 timedelta64 결과 값과 형식 오류를 제기 : datetime.timedelta 오래 비교할 수 없습니다. 비교가 실행되기 전에 numpy.timedelta로 변환.