2017-12-23 11 views
1

나는 판다 데이터 리더 패키지를 사용하여 프레드, 야후 파이낸스 같은 웹 사이트에서 경제적 시계열을 가져옵니다. 나는 'fred'웹 사이트와 yahoo finance의 역사 sp500 (^ GSPC)에서 우리에게 경기 침체 (USREC) 시리즈를 가져 왔습니다.팬 데스 DataReader : 정상화 날짜

역사 미국의 경기 침체 :

web.DataReader("USREC", "fred", start, end) 

출력 :

2017-08-31 2456.0 
2017-09-30 2493.0 
2017-10-31 2557.0 
2017-11-30 2594.0 
:

2017-08-01  0 
2017-09-01  0 
2017-10-01  0 
2017-11-01  0 

S & P500은

web.DataReader("^GSPC",'yahoo',start,end)['Close'].to_frame().resample('M').mean().round() 

출력을 반환

두 데이터 프레임을 병합하려고하지만 한 달 시작 날짜와 다른 달 끝 날짜가 있습니다. a) 날짜 열 yyyy-mm을 만드는 방법 b) 양쪽 프레임의 날짜 열을 시작 또는 끝으로 설정합니까?

도움 주셔서 감사합니다.

web.DataReader("^GSPC",'yahoo',start,end)['Close'].to_frame().resample('MS').mean().round() 

를 또는 달 PeriodIndex 가능 사용 to_period입니다 :

답변

2

당신은 달의 시작에 의해 재 샘플에 대한 MS을 사용할 수 있습니다

df1 = df1.to_period('M') 
df2 = df2.to_period('M') 
print (df1) 
     Close 
2017-08  0 
2017-09  0 
2017-10  0 
2017-11  0 

print (df2) 
      Close 
2017-08 2456.0 
2017-09 2493.0 
2017-10 2557.0 
2017-11 2594.0 

print (df1.index) 
PeriodIndex(['2017-08', '2017-09', '2017-10', '2017-11'], dtype='period[M]', freq='M') 

print (df2.index) 
PeriodIndex(['2017-08', '2017-09', '2017-10', '2017-11'], dtype='period[M]', freq='M')