gpt4 book ai didi

python - 替换与另一列 pandas 中的特定值相对应的列中的空值

转载 作者:行者123 更新时间:2023-12-01 07:36:19 24 4
gpt4 key购买 nike

我有一个数据框如下:

import pandas as pd
df = pd.DataFrame({'Country': ['USA','USA','MEX','IND','UK','UK','UK'],
'Region': ['Americas','NaN','NaN','Asia','Europe','NaN','NaN'],
'Flower': ['Rose','Lily','Lily','Orchid','Petunia','Lotus','Dandelion']})

我想将 Region 中的 NaN 值替换为其他区域的值。我的意思是,如果该国家是美国或墨西哥,则该地区应该是美洲,如果该国家是英国,则该地区应该是欧洲。

预期输出是

result = pd.DataFrame({'Country': ['USA','USA','MEX','IND','UK','UK','UK'],
'Region': ['Americas','Americas','Americas','Asia','Europe','Europe','Europe'],
'Flower': ['Rose','Lily','Lily','Orchid','Petunia','Lotus','Dandelion']})

我想知道一种简单的方法,而不必编写 if else 语句。

最佳答案

如果 ffill 不是一个选项,您可以尝试下面的代码,

df['Region'] = np.select((df.Country.isin(['USA', 'MEX']), df.Country == 'UK'),
('Americas', 'Europe'), df.Region)

关于python - 替换与另一列 pandas 中的特定值相对应的列中的空值,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/56977881/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com