켄 프렌치의 데이터 라이브러리에서 pandas.io.data
을 사용하여 Fama-French 요인을 얻었지 만 정수 년 월 데이터 인덱스를 변환하는 방법을 알 수는 없습니다. , 200105
)를 datetime
색인에 추가하면 pandas
기능을 이용할 수 있습니다.팬더의 정수 인덱스에서 팬텀의 datetime 인덱스로 변환
다음 코드는 실행되지만 주석 처리되지 않은 마지막 줄의 내 인덱스 시도는 DataFrame ff
의 모든 데이터를 삭제합니다. 또한 .reindex()
을 시도했지만 인덱스를 range
으로 변경하지 않았습니다. pandas
방법은 무엇입니까? 감사!
import pandas as pd
from pandas.io.data import DataReader
import datetime as dt
ff = pd.DataFrame(DataReader("F-F_Research_Data_Factors", "famafrench")[0])
ff.columns = ['Mkt_rf', 'SMB', 'HML', 'rf']
start = ff.index[0]
start = dt.datetime(year=start//100, month=start%100, day=1)
end = ff.index[-1]
end = dt.datetime(year=end//100, month=end%100, day=1)
range = pd.DateRange(start, end, offset=pd.datetools.MonthEnd())
ff = pd.DataFrame(ff, index=range)
#ff.reindex(range)
감사합니다! 내 '. 칼럼'을 사용하면 명백해야합니다. –
하지만 정수 인덱스를 문자열로 변환 한 다음 날짜 파서를 사용하는 방법이 있습니까? 아니면 두 종점에서이 날짜 변환을 수행하는 래퍼를 작성해야합니까? –
감사! "목록의 루프"는 목록에서'str()'을 사용하기 위해 누락 된 관용구입니다. 감사. –