0

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

假设这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) 

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

有没有办法直接对索引对象进行操作?

4

1 回答 1

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)

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

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

于 2013-06-12T01:15:25.660 回答