numpy 不支持转换为无单元的dtype“datetime64”

new9mtju  于 2023-06-06  发布在  其他
关注(0)|答案(1)|浏览(550)

我有一个Python代码,它指定了模式,然后创建了一个空的 Dataframe 。这段python代码在早期版本的Pandas和Numpy中运行良好。但是,在最新版本中,它失败了。
下面是代码:

import pandas as pd
import numpy as np

schema = {'timestamp': np.datetime64, 'instrument_token': int, 'last_price': float, 'volume': int}
data = pd.DataFrame(columns=schema.keys()).astype(schema)

它会抛出以下错误:
TypeError:不支持转换为无单元的dtype“datetime64”。传递例如'datetime64[ns]'。
如果你能帮忙解决这个问题我会很感激的。
感谢和问候,

zpjtge22

zpjtge221#

您必须指定内部存储的单位('ns','ms',' s',...):

import pandas as pd
import numpy as np

#                           HERE --v
schema = {'timestamp': 'datetime64[ns]', 'instrument_token': int, 'last_price': float, 'volume': int}
data = pd.DataFrame(columns=schema.keys()).astype(schema)

输出:

>>> data.dtypes
timestamp           datetime64[ns]
instrument_token             int64
last_price                 float64
volume                       int64
dtype: object

相关问题