如何在读取熊猫csv文件时重命名值

问题描述:

当我在一个命令行中读取csv文件时,如何重命名这些值?如何在读取熊猫csv文件时重命名值

df = pd.read_csv('aaa.csv') 

我希望看到这个数据帧

Hobby Sex No 
0 0 12345 

0  1  67788 

0  1  0909 

1  1  5867433 

像这样新的值转换。

Hobby  Sex  No 

Travel Female 12345 

Travel  Male  67788 

Travel  Male  0909 


Dance  Male  5867433 
+1

不要使用文件作为变量 – Boud

+0

@Boud我不知道很多有关处理CSV在Python中,但那有什么问题?对于正常的文件,'f = open(“stuff.txt”,'r')'很好,那么'df = pd.read_csv('aaa.csv')'有什么问题? –

+0

这是我编辑的版本,OP是file =并取代文件功能 – Boud

read_csv DOCS

变换器dict,默认None 字典的功能用于转换某些列中的值。键可以是整数或列标签

示范

converters = dict(Hobby=lambda x: {'0': 'Travel', '1': 'Dance'}[x], 
        Sex=lambda x: {'0': 'Female', '1': 'Male'}[x]) 

df = pd.read_csv('aaa.csv', converters=converters) 

df 

enter image description here

+0

非常感谢! lambda函数之后的[x]做什么? – MMM

+0

它从字典中获得x – piRSquared

使用带有映射的字典,并且每个字典应用到相应的列:

df['Hobby'] = df.Hobby.map({0:'Travel', 1:'Dance'}) 
df 
Out[52]: 
    Hobby Sex  No 
0 Travel 0 12345 
1 Travel 1 67788 
2 Travel 1  909 
3 Dance 1 5867433