gpt4 book ai didi

python - Pandas 数据框索引从日期时间中删除日期

转载 作者:行者123 更新时间:2023-12-05 02:47:04 26 4
gpt4 key购买 nike

文件数据example_df.txt:

2020-12-04_163024 26.15 26.37 19.40 24.57
2020-12-04_163026 26.15 26.37 19.20 24.57
2020-12-04_163028 26.05 26.37 18.78 24.57

我想将其作为 pandas 数据框读取,其中索引列只有格式为 '%H:%M:%S' 的时间部分,没有日期。

import pandas as pd
df = pd.read_csv("dataexample_df.txt", sep=' ', header=None, index_col=0)
print(df)

输出:

                       1      2      3      4
0
2020-12-04_163024 26.15 26.37 19.40 24.57
2020-12-04_163026 26.15 26.37 19.20 24.57
2020-12-04_163028 26.05 26.37 18.78 24.57

但是,想要的输出:

              1      2      3      4
0
16:30:24 26.15 26.37 19.40 24.57
16:30:26 26.15 26.37 19.20 24.57
16:30:28 26.05 26.37 18.78 24.57

我尝试了不同的 date_parser= 函数(参见 Parse_dates in Pandas 中的答案)但只得到错误信息。此外,有点相关的是 Python/Pandas convert string to time only但没有运气,我被困住了。我正在使用 Python 3.7。

最佳答案

考虑到您的 df 是这样的:

In [121]: df
Out[121]:
1 2 3 4
0
2020-12-04_163024 26.15 26.37 19.40 24.57
2020-12-04_163026 26.15 26.37 19.20 24.57
2020-12-04_163028 26.05 26.37 18.78 24.57

您可以使用 Series.replaceSeries.dt.time :

In [122]: df.reset_index(inplace=True)
In [127]: df[0] = pd.to_datetime(df[0].str.replace('_', ' ')).dt.time

In [130]: df.set_index(0, inplace=True)

In [131]: df
Out[131]:
1 2 3 4
0
16:30:24 26.15 26.37 19.40 24.57
16:30:26 26.15 26.37 19.20 24.57
16:30:28 26.05 26.37 18.78 24.57

关于python - Pandas 数据框索引从日期时间中删除日期,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/65200767/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com