python - 使用正则表达式从推文中提取主题标签的更快方法
问题描述
我有一个 pandas 数据框,其中包含 100 万条推文的详细信息,包括推文本身和各种其他属性。我正在尝试从推文中提取主题标签列表。重要的是该列表仍与每条推文相关联,而不是所有推文中的主题标签列表。
我拥有的推文数量意味着运行需要数小时/数天。有没有像我已经尝试过的那样在我的熊猫数据框上使用 iterrows 的替代方法?
def extracthash(x):
for index, row in tweets_scored.iterrows():
tweets_scored.loc[:,"Hashtags"]= tweets_scored.text.str.find(r'#.*?(?=\s|$)')
return tweets_scored
tweets_scored.apply(extracthash, axis=1)
这就是我的目标,如果我在我的数据框中只取少数行的子集,代码确实有效。
text hashtag list
I like #cheese and #flour [#cheese, #flour]
He eats #bread [#bread]
真诚感谢任何帮助!谢谢
解决方案
我正在使用这个小循环来处理类似的情况(推文上的 NLP)来提取标签和推文的 at 引用。它快速而简单:
import re
tHash = []
tAt = []
for item in tweets:
if re.search('^@.*', item):
tAt.append(item)
if re.search('^#.*', item):
tHash.append(item)
推荐阅读
- sql - 如何将数据与 SQL Server 中的上传文件匹配
- php - 无法在 xampp 中启动 apache;意外关机
- angular - 使用 Angular8 和 Bootstrap4 将 Ng-bootstrap 表绑定到选择
- python - 除最新文件外,使用 Python 归档文件
- r - 在R中循环列表,对列表中的元素进行特定的分析,将结果保存在元素数据框中?
- c# - VS2019 C#,如何解决这个问题:没有可用的编辑器
- java - PayPal沙盒API不允许买家登录
- python - 当调试为假时,Django 为未知 URL 提供 500 而不是 404
- c++ - 为什么我不能将函数分配给函数指针?
- arrays - C 中的 OpenMP 共享数组:减少与原子更新问题