[英]Replace part of string globally in dataframe
我有以下数据框:
id feature
1 p.Asp25Asn
2 p.Gly25Asn
3 p.Ile20Tyr
我想替换“功能”列的一部分。
例如:匹配时的Asp 应替换为'D'。 Asn 匹配时应替换为 'N' 等其他列值,如 Gly --> G, Ile -->I, Tyr -->Y
预期的输出是:
id feature
1 p.D25N
2 p.G25N
3 p.I20Y
我正在编写一个匹配条件并在全局执行此类替换的函数。 如果有更好的解决方案,请提出建议。
谢谢
您可以使用字典使用pandas.DataFrame.replace 。
df=pd.DataFrame({'id':[1,2,3],'feature':['p.Asp25Asn','p.Gly25Asn','p.Ile20Tyr']})
>>>df
id feature
0 1 p.Asp25Asn
1 2 p.Gly25Asn
2 3 p.Ile20Tyr
mydict={'Asp':'D','Asn':'N','Gly':'G','Ile':'I','Tyr':'Y'}
df = df.replace({"feature": mydict},regex=True)
>>>df
id feature
0 1 p.D25N
1 2 p.G25N
2 3 p.I20Y
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.