取代?和使用loc和replace从熊猫数据框中的列中的字符串对象获取符号

时间:2020-09-26 22:01:56

标签: python pandas

我第一次发帖-请客气。我真正地搜寻了正确的答案,并尝试了所有可能找到的选项。搜寻错误以尝试调整代码。我已经研究过转义字符。

我有一个熊猫数据框,其中的列称为Page。这是网页名称(而不是网址)的列表。

所以目前它们以3种格式编写:

  1. 家?家? pagename1
  2. 首页|主页| pagename2
  3. 首页主页名称3

我希望它们的格式都与数字3相同。

我试图从此列的字符串对象中删除字符,但保留其余代码。

我用过这个:

df.loc[df['Page'].str.replace(('\?|\|'), ''), Regex=True, Inplace=True]

但是我得到输出:

File "<ipython-input-80-2c616b171200>", line 2
df['page']=df.loc[df['Page'].str.replace(('\?|\\'), ''), Regex=True, Inplace=True]
SyntaxError: invalid syntax

如果使用此,则输出相同:

df['page']=df.loc[df['Page'].str.replace(('\?|\|'), ''), Regex=True, Inplace=True]

我尝试使用其他选项,例如:

x=pd.Series['Page']
x.str.replace('\?|\|','',regex = True, inplace=True)

但这给了我: TypeError Traceback (most recent call last) <ipython-input-70-6563d5fa5d40> in <module> 1 #clean up page names ----> 2 x=pd.Series['Page'] 3 x.str.replace('\?|\|','',regex = True, inplace=True) TypeError: 'type' object is not subscriptable

任何人都可以帮忙吗?

谢谢

Mizz

1 个答案:

答案 0 :(得分:-1)

附近。尝试一下-我对您的代码进行了一些调整。

df['page'] = df['page'].str.replace(r'\?|\\', '', regex=True)
``