如何根据某些条件更改熊猫中的列值

巴拉吉拉贾拉姆

我想在符合某些条件的情况下将数据框中的列值更改为另一个名称。

我尝试在数据框上应用apply方法,但没有成功。

这是我拥有的数据集,我希望在某些情况下可以更改国家/地区列名称。例如,“大韩民国”应更改为“韩国”,在此列中我需要更改相似的名称。我尝试套用方法,但没有得到任何结果。任何建议都会对我有帮助。先感谢您。**

df.head()

       Country Energy_Supply Energy_Supply_per_Capita   
0      Afghanistan      3.210000e       10.0    
1      Albania          1.020000e       35.0    
2      Algeria          1.959000e+09    51.0    
3      American Samoa   NaN             NaN 
n1tk

您可以对您感兴趣的列使用replace()创建一个字典repl_dict = {"Republic of China": "China", "Republic of Moldova": "Moldova", "Republic of France": "France","Great Britain": "England"},然后传递要替换的功能,有关更多详细信息和参数,请检查pandas.DataFrame.replace

此方法确实通过dictionary用所有感兴趣的名称创建来一次全部替换,最终将dataframe column基于此字典对进行标准化,而无需为每个字典单独运行Country

import pandas as pd
my_dict = { 'Country' : ["Republic of China", "China", "England", "Republic of Moldova", "Republic of France","Great Britain", "England"],
                   'age' : [20,27, 35, 55, 18, 21, 35],
                   'designation': ["VP", "CEO", "CFO", "VP", "VP", "CEO", "MD"]}

dfnew = pd.DataFrame(my_dict)
print(dfnew)

Country  age designation
0    Republic of China   20          VP
1                China   27         CEO
2              England   35         CFO
3  Republic of Moldova   55          VP
4   Republic of France   18          VP
5        Great Britain   21         CEO
6              England   35          MD
repl_dict = {"Republic of China": "China", "Republic of Moldova": "Moldova", "Republic of France": "France","Great Britain": "England"}
dfnew['Country'] = dfnew['Country'].replace(repl_dict, regex=True)
print()
print('Final dataframe', dfnew)
Final dataframe    
Country  age designation
0    China   20          VP
1    China   27         CEO
2  England   35         CFO
3  Moldova   55          VP
4   France   18          VP
5  England   21         CEO
6  England   35          MD

本文收集自互联网,转载请注明来源。

如有侵权,请联系 [email protected] 删除。

编辑于
0

我来说两句

0 条评论
登录 后参与评论

相关文章

熊猫:使用iloc根据条件更改df列值

根据某些词典数据,以熊猫为单位更改列值

如何根据熊猫数据框中的条件移动列中的值

如何根据特定条件替换列中的某些值?

如何根据熊猫中的某些条件创建row_number

如何基于熊猫中其他列的条件对列的某些值求平均值

如何根据给定条件在熊猫中更改特定行中的值?

如何使用熊猫根据行值条件更改列数据类型

如何根据熊猫数据框数据透视表中的条件获取列中的值?

根据熊猫中的条件交换列值

根据条件更改列中的值

如何根据熊猫另一列中的条件生成具有值的新列

熊猫:根据另一列中的条件更改该列的先前单元格值

熊猫:根据相同的列值但不同的行和条件更新某些列值

根据条件更新熊猫中的列值

根据不同的条件更改列中的值

熊猫数据框根据条件更改列中的值

熊猫如何根据最后一个元素的条件保留值或更改列的值

根据多个列上的条件更改数据框列中的某些值

如何根据条件删除某些组中的某些观测值

熊猫-根据单元格和列中的条件更改单元格值

如何根据多种条件更改熊猫数据框列系列中的特定单元格值?

根据两列或更多列的条件更改熊猫中的列值

根据在熊猫中不起作用的条件更改行值

根据条件更改熊猫中的列值

如何根据频率更改列中的每个值(某些值除外)

如何根据熊猫中的条件替换列之间的值?

熊猫根据条件更改列值的有效方法

如何根据某些条件更改熊猫的值?