从 DataFrame 中的时间格式数据中删除小数秒

MDS*_*MDS 4 python time pandas

我从两个 xlsx 电子表格中获得了两个大 df,并希望将它们合并到“on”时间戳 ['Time'] 数据。

问题在于,一个数据集记录的时间为小数秒,而另一个数据集记录的时间为整数秒。这意味着两个数据集 ['Time'] 键永远不会匹配......

df1     Time                                 df2     Time
0       00:07:53.755000                      0       00:07:53
1       00:07:54.096000                      1       00:07:54
2       00:07:55.097000                      2       00:07:55
3       00:07:56.099000                      3       00:07:56
4       00:07:57.002000                      4       00:07:57
5       00:07:58.012000                      5       00:07:58
Run Code Online (Sandbox Code Playgroud)

我尝试过在 Excel 中修改时间格式,但它始终保留毫秒值,因为它是 24 小时的小数部分。我需要从 df1 中删除小数秒(或者只是让它们以某种方式匹配!)以允许与 df2 中的行数据匹配,并且我希望有一种更简单的方法可以在 python 中执行此操作?

感谢任何和所有的建议!

jpp*_*jpp 7

在 中df1,您可以将微秒设置为 0:

df1['Time'] = pd.to_datetime(df1['Time']).apply(lambda x: x.replace(microsecond=0))
Run Code Online (Sandbox Code Playgroud)

然后照常执行合并。