2012-11-01 5 views
2

팬더 타임리스트를 가장 가까운 캘린더 쿼터로 리 샘플/정렬하는 방법은 무엇입니까?

import pandas 
from datetime import datetime 

v = [100, 200] 
i = [datetime(2012, 1, 31), datetime(2012, 4, 30)] 
s = pandas.Series(data=v, index=i) 

가 여기에 원래의 시계열을의 간단한 설치 :

In [11]: s 
Out[11]: 
2012-01-31 100 
2012-04-30 200 

그리고 리샘플링 후

: 그래서 월/4월 3 월/6월에 정렬있어

In [12]: s.resample('Q') 
Out[12]: 
2012-03-31 100 
2012-06-30 200 
Freq: Q-DEC 

.

왜 팬더는 대신 Dec/Mar를 선택하지 않았습니까?

또한, 월별 기능과 함께 12 월/3 월 (원래 날짜에 가까운 것 같습니다)에 맞출 수있는 방법이 있습니까?

답변

1

나는 가장 가까운 곳으로 정렬하는 쉬운 해결책이 없다는 것을 알고 있으며 현재 버전은 꽤 논리적이다. 하지만 label='left'을 사용하면 현재 데이터로 원하는 것을 얻을 수 있습니다. 가장 가까운 데이터와 정렬되지 않으므로 전체적으로 아마 다른 것을 알아 내야 할 것입니다 (날짜를 변경하여 적용하면 원하는대로 준수 할 수 있습니다) .

s.resample('Q',label='left')  

Out[57]: 
2011-12-31 100 
2012-03-31 200 
Freq: Q-DEC 
+0

감사합니다. 나는이 질문을하는 것이 내가하는 일을 성취하는 데 궁극적으로 도움이되지 않는다는 것을 깨달았습니다. 그래서 나는 [보다 포괄적 인 질문을 여기에서] 열었습니다. (http://stackoverflow.com/questions/13185454/using -resample-to-align-multiple-timeseries-in-pandas)를 사용합니다. 네가 한 번 봐 주면 정말 고마워! – dshap