当前位置: 首页 > 知识库问答 >
问题:

使用pandas python重命名dataframe列[duplicate]

姬存
2023-03-14

我正在尝试更改dataframe列的名称,我尝试了两种方法,但都不起作用。这是我的代码;

方法一:

def func():   
    energy=pd.ExcelFile('Energy Indicators.xls').parse('Energy')
    energy=energy.iloc[16:][['Environmental Indicators: Energy','Unnamed:3','Unnamed: 4','Unnamed: 5']].copy() energy.columns()=['Country',
    'Energy Supply', 'Energy Supply per Capita', '%Renewable']
return energy
def func():
    energy=pd.ExcelFile('Energy Indicators.xls').parse('Energy')
    energy=energy.iloc[16:][['Environmental Indicators: Energy','Unnamed: 3','Unnamed: 4','Unnamed: 5']].copy()

    return energy.rename(columns={'Environmental Indicators: Energy': 'Country', 'Unnamed: 3': 'Energy Supply',
                                  'Unnamed: 4': 'Energy Supply per Capita', 'Unnamed: 5': '% Renewable'}, inplace=True)

共有1个答案

郑曜灿
2023-03-14

在方法1中,尝试将Energy.Columns()更改为Energy.Columns:

energy.columns =['Country','Energy Supply', 'Energy Supply per Capita', '%Renewable']
 类似资料:
  • 我正在尝试用dataframe.from_dict操作命名新dataframe的列。

  • 我还尝试了以下操作: 同样,在我运行脚本之后,不会出现。我只有前两个字段名;第三个不停地掉下来。我该怎么解决这个?

  • 我正在尝试转换Spark-Scala中的所有标题/列名。到目前为止,我提出了以下代码,它只替换单个列名。

  • 还有其他关于如何重命名PySpark DataFrame中的列的线程,请参见这里、这里和这里。我不认为现有的解决方案具有足够的性能或通用性(我有一个应该更好的解决方案,但我被一个边缘情况bug所困扰)。让我们从回顾当前解决方案中的问题开始: 重复调用可能会遇到与多次调用相同的性能问题,如本博客文章所述。请参见此答案中的选项2。 toDF方法依赖于模式推断,不一定保留列的nullable属性(在生产

  • 我有一个dataframe,其列为RangeIndex。我想改名字。

  • 问题内容: 我在df中有几列相同的名称。需要重命名它们。无论如何,通常的重命名都会重命名,我可以将下面的blah重命名为blah1,blah4,blah5吗? 在[7]中: 问题答案: 我希望在Pandas中找到比通用Python解决方案更多的解决方案。如果Column的get_loc()函数找到带有“ True”值的重复项,则该掩码数组将返回掩码数组,“ True”值指向找到重复项的位置。然后,