Python 将数据帧中的列从float截断为int
我有一个数据框(Python 将数据帧中的列从float截断为int,python,pandas,Python,Pandas,我有一个数据框(df),它有一个Age列,看起来像 Age 0 59.917864 1 50.387406 2 50.387406 3 55.008898 我正在尝试创建一个新的列调用Age\u truncated,它将Age列作为一个整数,如下所示: Age Age_truncated 0 59.917864 59 1 50.38740
df
),它有一个Age
列,看起来像
Age
0 59.917864
1 50.387406
2 50.387406
3 55.008898
我正在尝试创建一个新的列调用Age\u truncated
,它将Age
列作为一个整数,如下所示:
Age Age_truncated
0 59.917864 59
1 50.387406 50
2 50.387406 50
3 55.008898 55
我试过:
df[("Age_truncated")] = df["Age"].astype(int)
df["Age_truncated"] = int(df["Age"])
没有成功。我还可以尝试什么呢?您可以使用
floor
从numpy
df['Age1']=np.floor(df.Age).astype(int)
df
Out[414]:
Age Age1
0 59.917864 59
1 50.387406 50
2 50.387406 50
3 55.008898 55
df[“Age”].astype(int)
应该可以工作,即使在df[(“Age\u被截断”)]
中有括号(您不需要它们)。当您尝试df[“Age\u truncated”)=df[“Age”]时,您会收到什么错误。astype(int)
?谢谢,没有错误消息,它只是停止了…..这对我很有用。什么是“它只是停止了”?Python崩溃?没有返回任何
?引发异常?抱歉,我的意思是程序到达了df[“Age\u truncated”]=df[“Age”行.astype(int)然后停止。我有一个print语句在它之后不运行。您重现了OP的问题吗?