将列值(和类型)更改为pandas Dataframe

时间:2016-08-03 15:36:41

标签: python pandas

我正在尝试重命名pandas数据框中的列,但不同的数据框具有不同类型的列,我需要帮助。一个简单的例子将澄清我的问题。

import pandas as pd
dic1 = {'a': [4, 1, 3, 1], 'b': [4, 2, 1, 4], 'c': [5, 7, 9, 1]}
dic2 = {1: [4, 1, 3, 1], 2: [4, 2, 1, 4], 3: [5, 7, 9, 1]}

df1 = pd.DataFrame(dic1)
df2 = pd.DataFrame(dic2)

现在如果我输入

df1.columns.values[-1] = 'newName'

我可以轻松更改第一个数据帧的最后一个列名,但是如果我输入

df2.columns.values[-1] = 'newName'

我从Python收到错误消息,因为第二个数据框中的列属于不同类型。有没有办法改变这些列的类型和/或让Python以某种方式理解,即使df2的最后一列必须被命名为' newName'?

1 个答案:

答案 0 :(得分:3)

这不是重命名列的常规方法,您应该使用rename来执行此操作:

caffe