在Pandas中对索引对象进行操作

时间:2013-06-12 00:57:22

标签: python numpy pandas

我正在尝试将Pandas数据框中的索引转换为datetime对象,以便我可以选择时间范围。

假设my_df是我正在使用的数据框,我有以下内容:

# 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) 

返回一个列表,因此上面的代码将索引转换为列表,并将其转换回索引。

有没有办法直接在索引对象上操作?

1 个答案:

答案 0 :(得分:3)

我会直接使用to_datetime

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

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

这比使用map(尤其是python的内置地图)快

注意:to_datetime不需要格式参数。