如何编辑df.columns中的几个元素

Kai*_*Kai 3 python dataframe pandas

例如,列的元素是 ['a', 'b', 2006.0, 2005.0, ... ,1995.0]

现在,我希望将float更改为int,因此列的正确元素应该是 ['a', 'b', 2006, 2005, ... , 1995]

由于这里有很多数字,我认为rename(columns={'old name': 'new name'})不是一个好主意.谁能告诉我如何编辑它?

Max*_*axU 7

你可以这样做:

In [49]: df
Out[49]:
   a  b  2006.0  2005.0
0  1  1       1       1
1  2  2       2       2

In [50]: df.columns.tolist()
Out[50]: ['a', 'b', 2006.0, 2005.0]

In [51]: df.rename(columns=lambda x: int(x) if type(x) == float else x)
Out[51]:
   a  b  2006  2005
0  1  1     1     1
1  2  2     2     2
Run Code Online (Sandbox Code Playgroud)