Python 将UInt32更改为int64以进行dt.isocalendar()周计算
对于一个数据科学项目,我曾通过以下代码计算周数:Python 将UInt32更改为int64以进行dt.isocalendar()周计算,python,python-3.x,pandas,dataframe,integer,Python,Python 3.x,Pandas,Dataframe,Integer,对于一个数据科学项目,我曾通过以下代码计算周数: df['Week\u Nr']=df['Date'].dt.周 由于此函数现在已贬值,因此我改为 df['Week\u Nr']=df['Date'].dt.isocalendar().Week 然而,我的输出过去是int64,现在是UInt32 这会在以下计算中导致错误:“ValueError:DataFrame.dtypes的数据类型必须是int、float或bool。不应在字段Week\u Nr中使用数据类型” 因此,我的问题是如何修改is
df['Week\u Nr']=df['Date'].dt.周
由于此函数现在已贬值,因此我改为
df['Week\u Nr']=df['Date'].dt.isocalendar().Week
然而,我的输出过去是int64,现在是UInt32
这会在以下计算中导致错误:“ValueError:DataFrame.dtypes的数据类型必须是int、float或bool。不应在字段Week\u Nr中使用数据类型”
因此,我的问题是如何修改isocalendar().week以提供int64输出,或者如何将列转换为int64,因为我没有成功地找到正确的代码。
此代码不起作用:df['Week\u Nr']=pd.to\u numeric(df['Week\u Nr'],errors='concurve')
try.astype(numpy.int64)或.astype(“int64”)try.astype(numpy.int64)或.astype(“int64”)