str_replace_all()r在python中是等效的

2024-04-29 10:01:53 发布

您现在位置:Python中文网/ 问答频道 /正文

我正在从R转换到Python,并有一个示例数据帧,如下所示:

df = df = pd.DataFrame({'characterisitics': pd.Series(['Walter White made meth', 'Jessie Pinkman was called meth-head', 'Saul Goodman is always happy']), 'name': pd.Series(['Walter White', 'Jessie Pinkman', 'Saul Goodman'])})

         characteristics                        name
0               Walter White made meth      Walter White
1  Jessie Pinkman was called meth-head     Jessie Pinkman
2         Saul Goodman is always happy       Saul Goodman

我想对每一行使用与“name”列匹配的“characteristics”部分。在R,我可以用:

^{pr2}$

我的输出如下:

       characteristics            name
0             made meth    Walter White
1  was called meth-head  Jessie Pinkman
2       is always happy    Saul Goodman

如果我想在Python中实现这一点,我应该使用什么语法?在

谢谢!在


Tags: nameisalwaysheadpdwhitemadewas
1条回答
网友
1楼 · 发布于 2024-04-29 10:01:53

我认为对于这一个,你必须对每一行应用一个快速的lambda。对于简单的示例,实际上并不需要regex,因此标准str.replace()可以正常工作:

df.apply(lambda row: row['characterisitics'].replace(row['name'], ''), axis='columns')
Out[8]: 
0                made meth
1     was called meth-head
2          is always happy
dtype: object

相关问题 更多 >