繁体   English   中英

如何在特定列和行上替换 dataframe 中的字符串?

[英]how to replace string in dataframe on specific column and row?

pandas.DataFrame
({"POC":['K3525','P022','P0025'],
"AREA":['3','',''],
"COUNTRIES":['KR,US,MO','MY,IN,ZW,KR,US','VN,UK,ZW']})
POC 区域 国家
K3525 3 韩国、美国、莫
PO22 MY,IN,ZW,KR,美国
P0025 越南,英国,ZW

在这个 DataFrame 中,我想在一个数据处将“,ZW”或“ZW”替换为“”(我的意思是删除它)(行是“P0025”,列是“国家”)

我搜索了它,但我找不到任何设置列和行的方法。 我发现了类似的东西

df.replace({'COUNTRIES': {',ZW':'', 'ZW,':''}})

但它不设置行和列,只设置列。

期望的结果是

POC 区域 国家
K3525 3 韩国、美国、莫
PO22 MY,IN,ZW,KR,美国
P0025 越南,英国

不想要的结果是

POC 区域 国家
K3525 3 韩国、美国、莫
PO22 马来西亚、印度、韩国、美国
P0025 越南,英国

利用:

m = df['POC'].eq('P0025')

df[m] = df[m].replace({'COUNTRIES': {',ZW':'', 'ZW,':''}})

或者:

 df.loc[m, 'COUNTRIES'] = df.loc[m, 'COUNTRIES'].replace({',ZW':'', 'ZW,':''})

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM