无法将系列转换为 <class 'int'`>

Fan*_*hao 0 python pandas

我有一组带有 Age 列的数据。我想删除所有年龄超过 90 且小于 1856 的行。

这是 df 的负责人:

在此处输入图片说明

这是我尝试的: 在此处输入图片说明

Sco*_*ton 23

您的错误是第 2 行。 df['intage'] = int(df['age'])无效,您无法将 Pandas 系列传递给 int 函数。

astype如果 df['age'] 是对象数据类型,则需要使用。

df['intage'] = df['age'].astype(int)
Run Code Online (Sandbox Code Playgroud)

或者由于您要减去两个日期,因此您需要使用带有 days 属性的 dt 访问器来获取作为整数的天数

df['intage'] = df['age'].dt.days
Run Code Online (Sandbox Code Playgroud)