将数据帧从日期时间['ns']转换为日期时间['us']

问题描述 投票:0回答:1

我正在尝试将 pandas 数据帧的一列从 datetime['ns'] 转换为 datetime['us']。

我尝试过使用

astype
,但列类型似乎没有改变。由于某些下游库检查特定列类型,我需要更新列本身的类型。

>> data[column].dtype.name
'datetime64[ns]'
>> data[column] = data[column].astype('datetime64[us]')
>> data[column].dtype.name
'datetime64[ns]'
python pandas dataframe
1个回答
0
投票

Pandas 内部默认表示以纳秒为单位的日期时间数据 (

datetime64[ns]
)。当您尝试将其转换为微秒(datetime64[us])时,pandas 不会更改数据的内部表示,因此
dtype
仍然显示为
datetime64[ns]
。如果你想输出微秒精度的数据,可以尝试以下方法:

data['datetime_column'].dt.strftime('%Y-%m-%d %H:%M:%S.%f')
© www.soinside.com 2019 - 2024. All rights reserved.