替换 pandas 数据框列中的子字符串 [英] replace substring in pandas data frame column
问题描述
我正在使用包含名为"raw_parameter_name"的列的数据框.在此列中,我具有不同的字符串值.几个值类似于以下模式"ABCD; MEAN". 我想做的是将每个值"ABCD; MEAN"替换为"ABCD; X-BAR".子字符串"ABCD"可能会有所不同,但模式; MEAN"是不变的,我想替换.使用替换"方法研究了不同的选项,但不知道如何仅替换子字符串而不是整个字符串.请指教. 预先谢谢你
I am working with dataframe that contains column named "raw_parameter_name". In this column i have different string values. Several values are like following pattern "ABCD;MEAN". What i am trying to do is to replace each value "ABCD;MEAN" with "ABCD;X-BAR". Sub string "ABCD" may vary but pattern ";MEAN" is constant i want to replace. Looked into different options using "replace" method but don't know how to replace sub string only and not whole string. Please advise. Thank you in advance
推荐答案
您可以使用正则表达式模块re
例如:
You can use regex module re
for example:
import pandas as pd
import re
df = pd.DataFrame({"row_parameter_name":['abcd;MEAN','Dogg11;MEAN',';MEAN']})
Out[126]:
row_parameter_name
0 abcd;MEAN
1 Dogg11;MEAN
2 ;MEAN
df['row_parameter_name'] = df['row_parameter_name'].apply(lambda x: re.sub(';MEAN$',';X-BAR',x))
In [128]: df
Out[128]:
row_parameter_name
0 abcd;X-BAR
1 Dogg11;X-BAR
2 ;X-BAR
这篇关于替换 pandas 数据框列中的子字符串的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!