将 UInt32 更改为 int64 以进行 dt.isocalendar().week 计算

Hue*_*chi 1 python integer dataframe python-3.x pandas

对于一个数据科学项目,我曾经通过以下代码计算周数:

df['Week_Nr'] = df['Date'].dt.week

由于此功能现已贬值,我改为

df['Week_Nr'] = df['Date'].dt.isocalendar().week

然而我的输出曾经是 int64 格式,现在是 UInt32 格式

这会导致以下计算出现错误:“ValueError: DataFrame.dtypes for data must be int, float or bool.Did not Expect the data types in fields Week_Nr”

所以我的问题是如何修改 isocalendar().week 来给我一个 int64 输出或如何将列转换为 int64 因为我没有成功找到正确的代码。此代码不起作用:df['Week_Nr'] = pd.to_numeric(df['Week_Nr'],errors='coerce')

And*_* S. 5

尝试.astype(numpy.int64).astype("int64")