将 HTML 标签移除应用于 Pandas 列

sno*_*all 4 html python pandas

我需要从 pandas 列中的所有内容中删除 HTML 标签并保留描述。

我已经删除了一列的标签,但需要将它们应用于其他列 - 这就是我所做的;

输入:

df.description[1]

输出:

'<p>Das Ziel der <a href="http://swa-muc.de">Software Architektur München Gruppe</a> ist es, Menschen, die sich mit Software-Architektur auseinandersetzen wollen, in und um München regelmäßig zusammenzubringen, und einen persönlichen Erfahrungsaustausch zu etablieren. Dazu dienen neben der Meetup-Gruppe insbesondere der persönliche Erfahrungsaustausch, organisiert in informellen Treffen, Diskussion von Erfahrungsberichten und Case Studies bis hin zu Vorträge und Workshops. Diese werden auch über Twitter <a href="https://twitter.com/swamuc">@swamuc</a> und Meetup bekannt gegeben.</p>'
Run Code Online (Sandbox Code Playgroud)

我做到了;

read = df.description[1]
read_result = re.sub('<[^<]+?>', '', read)
print(read_result)
Run Code Online (Sandbox Code Playgroud)

输出:

Das Ziel der Software Architektur München Gruppe ist es, Menschen, die sich mit Software-Architektur auseinandersetzen wollen, in und um München regelmäßig zusammenzubringen, und einen persönlichen Erfahrungsaustausch zu etablieren. Dazu dienen neben der Meetup-Gruppe insbesondere der persönliche Erfahrungsaustausch, organisiert in informellen Treffen, Diskussion von Erfahrungsberichten und Case Studies bis hin zu Vorträge und Workshops. Diese werden auch über Twitter @swamuc und Meetup bekannt gegeben.
Run Code Online (Sandbox Code Playgroud)

这一切都很好,但我需要对整个df.descriptionPandas 专栏执行此操作。

这是我尝试过的:

 new_read = df.description[0:10148]
 new_read_result = re.sub('<[^<]+?>', '', new_read)
 print(new_read_result) 
Run Code Online (Sandbox Code Playgroud)

但是,这不起作用并返回;

类型错误:预期的字符串或类似字节的对象

这是我正在尝试应用的另一种方法:

df.description.apply(re.sub('<[^<]+?>', '', new_read))
Run Code Online (Sandbox Code Playgroud)

但也不起作用。

如何将其应用于整个熊猫列?

Rak*_*esh 5

使用lambdaapply

前任:

import pandas as pd
import re

df = pd.DataFrame({"description": ['<p>Hello</p>', '<p>World</p>']})
print( df.description.apply(lambda x: re.sub('<[^<]+?>', '', x)))
Run Code Online (Sandbox Code Playgroud)

输出:

0    Hello
1    World
Name: description, dtype: object
Run Code Online (Sandbox Code Playgroud)