您好我有以下数据框

df =

       Record_ID       Time
        94704   2014-03-10 07:19:19.647342
        94705   2014-03-10 07:21:44.479363
        94706   2014-03-10 07:21:45.479581
        94707   2014-03-10 07:21:54.481588
        94708   2014-03-10 07:21:55.481804

可能有以下人吗?
df1 =

       Record_ID       Time
        94704   2014-03-10 07:19:19
        94705   2014-03-10 07:21:44
        94706   2014-03-10 07:21:45
        94707   2014-03-10 07:21:54
        94708   2014-03-10 07:21:55

最佳答案

您可以使用datetime64[ns]将基础 datetime64[s] 值转换为astype值:

In [11]: df['Time'] = df['Time'].astype('datetime64[s]')

In [12]: df
Out[12]:
   Record_ID                Time
0      94704 2014-03-10 07:19:19
1      94705 2014-03-10 07:21:44
2      94706 2014-03-10 07:21:45
3      94707 2014-03-10 07:21:54
4      94708 2014-03-10 07:21:55
请注意,由于Pandas Series和DataFrames store all datetime values as datetime64[ns] 会自动将这些datetime64[s]值转换回datetime64[ns],因此最终结果仍将存储为datetime64[ns]值,但是对astype的调用会导致秒的小数部分被删除。
如果您希望使用NumPy的datetime64[s]值数组,则可以使用df['Time'].values.astype('datetime64[s]')

关于python - Python:降低精度 Pandas 时间戳数据框,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/32827169/

10-12 23:53