2013-06-12 4 views
0

시간 범위를 선택할 수 있도록 팬더 데이터 프레임의 인덱스를 datetime 개체로 변환하려고합니다.팬더의 인덱스 개체에서 작동

# Conversion function: 
def convert_times(x): return datetime.strptime(x, '%H:%M:%S.%f') 

# Convert every index value in my dataframe 
my_df.index = map(convert_times, my_df.index) 

을하지만 난

map(convert_times, my_df.index) 

이 목록을 반환 것으로 나타났습니다, 그래서 위의 코드는 인덱스를 변환 : my_df한다고 가정

나는 다음과 같은 한 내가 함께 일하고 dataframe입니다 색인으로 다시 변환되는 목록으로 이동합니다.

인덱스 개체에서 직접 작동하는 방법이 있습니까?

+1

정말 연/월/일이 없습니까? 분명히이 datetimes는 정크가 될 것입니다 (1900 년에있을 것인가?). –

+0

감사합니다. @ 앤디, 나는 두렵습니다. 그렇습니다. 당신 말이 맞습니다. 나는 1900-1-1을 얻습니다. –

+0

무엇을 원했습니까? –

답변

2

나는 to_datetime 직접 사용합니다 :

datetime_format = '%H:%M:%S.%f' # tweak depending on format of dates 

df.index = pd.to_datetime(df.index, format=format_datetime) 

이지도 (특히 파이썬의 내장지도)를 사용하는 것보다 상당히 빨라집니다.

참고 : to_datetime에는 format 인수가 필요하지 않습니다.