You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

使用tidytext从R数据框提取哈希标签报错,求解决方案

解决tidytext提取推文哈希标签的报错问题

tidytext 0.4.0版本后彻底移除了token = "tweets"的支持,所以你原代码会报错,这里提供两种替代方案:

方法1:用正则表达式直接提取哈希标签

这种方式更直接高效,适合只需要提取哈希标签的场景:

library(tidytext)
library(dplyr)
library(stringr)

otros_numerales_numeral_petro <- Numeral_Petro_sin_emojis %>%
  # 用正则匹配以#开头的哈希标签,直接提取
  unnest_tokens(output = "hashtag", input = "Texto", 
                token = "regex", pattern = "#\\w+") %>%
  # 可选:统一转为小写,避免同一标签大小写不同导致的重复
  mutate(hashtag = str_to_lower(hashtag))

正则#\\w+会匹配所有以#开头、后续跟着字母/数字/下划线的内容,完美覆盖标准哈希标签格式。

方法2:借助tokenizers包的推特分词功能

如果后续还需要提取@提及等其他推特元素,可以用这种方式:

library(tidytext)
library(dplyr)
library(tokenizers)
library(stringr)

otros_numerales_numeral_petro <- Numeral_Petro_sin_emojis %>%
  # 对每条推文做推特分词,筛选出哈希标签
  mutate(hashtags = map(Texto, ~ tokenize_tweets(.x)[[1]] %>% str_subset("^#"))) %>%
  # 展开为每行一个哈希标签
  unnest(hashtags, names_repair = "unique") %>%
  # 重命名列名
  rename(hashtag = hashtags) %>%
  # 可选:统一转为小写
  mutate(hashtag = str_to_lower(hashtag))

tokenize_tweets()会自动识别推特专属元素(哈希标签、@提及、网址等),再通过str_subset筛选出哈希标签即可。

内容的提问来源于stack exchange,提问作者Juan Jose Echeverry De Mendoza

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.07.26 12:02:55