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

如何使用R对推特数据集分词、移除停用词并转换为tidy text格式

问题背景

我正在对推特数据集开展分析,卡在将数据转换为tidy text并移除停用词的环节,参照网上方法运行时报错,目前已完成的代码如下,数据集为Kaggle平台常见的公开推特数据集,截图如下:
最终数据集截图

library(readr)
library(stringr)
library(caret)
library(car)
library(tidytext)
library(stringr)
library(tidyr)

set.seed(123)
twitter_train<-read.csv("/Users/School/Documents/R/Final Training Data Set-twitter.csv")
text<-twitter_train$tweet
text <- tolower(text)
# 移除提及、链接、表情、数字、标点符号等
text <- gsub("@\\w+", "", text)
text <- gsub("https?://.+", "", text)
text <- gsub("\\d+\\w*\\d*", "", text)
text <- gsub("#\\w+", "", text)
text <- gsub("[^\x01-\x7F]", "", text)
text <- gsub("[[:punct:]]", " ", text)
# 移除空格与换行符
text <- gsub("\n", " ", text)
text <- gsub("^\\s+", "", text)
text <- gsub("\\s+$", "", text)
text <- gsub("[ |\t]+", " ", text)
# 新建列存储清洗后的推文内容
twitter_train["fix_text"] <- text
解决方法

现有代码的文本预处理部分没有问题,你只需要补充加载dplyr依赖包,按以下步骤执行后续操作即可:

# 补充加载依赖包
library(dplyr)

# 转换为tidy text格式,完成分词
tidy_twitter <- twitter_train %>%
  mutate(tweet_id = row_number()) %>% # 给每条推文增加唯一标识,方便后续聚合统计
  unnest_tokens(word, fix_text) # 将清洗后的文本拆分为单个单词,每个单词单独占一行

# 移除停用词
tidy_twitter_clean <- tidy_twitter %>%
  anti_join(stop_words, by = "word") # 匹配tidytext内置的英文停用词表,移除匹配到的停用词

运行完成后得到的tidy_twitter_clean就是已移除停用词的tidy text格式数据集,可直接用于后续词频统计、情感分析等操作。

内容的提问来源于stack exchange,提问作者Ishh

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.09.24 03:15:03