【发布时间】:2022-02-23 23:12:47
【问题描述】:
我的论文项目有一个问题。 为了进行情绪分析,我想消除所有主题标签,但是使用此 Python 代码,我只删除了“#”。我还想删除与“#”相关的单词。 谢谢大家
df['text']=df['text'].apply(lambda x:' '.join(re.findall(r'\w+', x)))
【问题讨论】:
标签: python twitter dataset screen-scraping analysis
我的论文项目有一个问题。 为了进行情绪分析,我想消除所有主题标签,但是使用此 Python 代码,我只删除了“#”。我还想删除与“#”相关的单词。 谢谢大家
df['text']=df['text'].apply(lambda x:' '.join(re.findall(r'\w+', x)))
【问题讨论】:
标签: python twitter dataset screen-scraping analysis
假设您希望主题标签后的其余单词保持不变,请尝试以下操作:
import re
df['text']=df['text'].apply(lambda x:(re.sub("#([\S]+)",'',x)))
它将删除 # 之后的所有单词,直到下一个空格。
【讨论】:
您可以使用 re.sub 方法。类似的东西:
df["text"] = df["text"].apply (lambda x : re.sub (r"#.*\s", "", x))
通过这种方式,您可以用空字符串替换与模式“#.*\s”(井号后跟任意数量的字符后跟空格)匹配的所有内容。您可能需要根据您的数据稍微调整正则表达式。
在此处查看有关 re 模块的文档:https://docs.python.org/3/library/re.html
【讨论】: