Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/python-3.x/16.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Python 在数据帧中编辑字符串_Python_Python 3.x_Pandas_String_Data Cleaning - Fatal编程技术网

Python 在数据帧中编辑字符串

Python 在数据帧中编辑字符串,python,python-3.x,pandas,string,data-cleaning,Python,Python 3.x,Pandas,String,Data Cleaning,我有一个熊猫数据框,如下所示: Date Title Jan 1 Washington Running Jan 2 Jefferson City Cycling Jan 3 Springfield Running ... 如何从所有标题中删除“跑步”或“骑自行车”一词?我想得到: Date Title Jan 1 Washington Jan 2 Jefferson City Jan 3 Springfield ... 您需要使用熊猫的字符串修饰符。以下是pandas

我有一个熊猫数据框,如下所示:

Date   Title 
Jan 1  Washington Running
Jan 2  Jefferson City Cycling
Jan 3  Springfield Running
...
如何从所有标题中删除“跑步”或“骑自行车”一词?我想得到:

Date   Title 
Jan 1  Washington
Jan 2  Jefferson City
Jan 3  Springfield
...

您需要使用熊猫的字符串修饰符。以下是pandas.Series.str.replace()的代码。它比正常的更换稍微快一点

Mechanical_meat出色的单线方法可与
.str.replace()配合使用。
此外:

df['Title'].str.replace(r'(\bRunning\b|\bCycling\b)','',regex=True)

我想我应该提供另一种选择,使用
df['Title'].str.replace('Running','')
df['Title'].str.replace('Cycling','')
。为什么要分两步进行?它避免了可能“昂贵”的正则表达式。对两个小数据帧运行
timeit
,发现运行两次replace的开销明显高于regex的成本。我想,对于较大的数据帧,情况只会变得更糟。

您可能希望使用pandas的字符串修饰符。以下是pandas.Series.str.replace()的代码。它比正常的更换稍微快一点

Mechanical_meat出色的单线方法可与
.str.replace()配合使用。
此外:

df['Title'].str.replace(r'(\bRunning\b|\bCycling\b)','',regex=True)
我想我应该提供另一种选择,使用
df['Title'].str.replace('Running','')
df['Title'].str.replace('Cycling','')
。为什么要分两步进行?它避免了可能“昂贵”的正则表达式。对两个小数据帧运行
timeit
,发现运行两次replace的开销明显高于regex的成本。我想,对于更大的数据帧,情况只会变得更糟