重命名 Pandas DataFrame 中的列不起作用

问题描述 投票:0回答:1

我创建了一个 Pandas DataFrame,其中的列名称为 0,1,2..,并尝试重命名它们,但重命名功能不起作用。

我的代码:

complete_list 是一个列表列表,我想将其转换为 csv。

output_csv = pd.DataFrame(complete_list) 
output_csv.rename(columns={'0':'dpinID', '1': 'latin_name', '2': 'common_names'})
output_csv.to_csv('output.csv')

this is the head of the dataframe complete_list

python csv
1个回答
3
投票

您面临的问题是由两个问题引起的:

  1. .rename(...)
    返回一个新的 DataFrame,而不是就地更改现有的 DataFrame
  2. 重命名字典使用字符串化整数作为源名称,而不是实际的
    int

修复方法相当简单:

output_csv.rename(columns={0:'dpinID', 1: 'latin_name', 2: 'common_names'}, inplace=True)
© www.soinside.com 2019 - 2024. All rights reserved.