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

R语言实现统计各句不同长度单词频次并生成对应数组

R语言单词长度统计实现方案

你已经完成了文本按空格拆分单词的前置步骤,后续代码直接追加运行即可得到要求的9行4列统计数组:

# 初始化结果矩阵:9行对应1-9字母长度,4列对应4个输入句子,默认值为0
result <- matrix(
  data = 0,
  nrow = 9,
  ncol = 4,
  dimnames = list(
    paste0(1:9, "字母长度"),
    paste0("第", 1:4, "句")
  )
)

# 逐句统计单词长度频次
for (sentence_idx in seq_along(words)) {
  # 计算当前句子每个单词的字符数
  word_lengths <- nchar(words[[sentence_idx]])
  # 仅保留1-9字母长度的单词,超出范围的不纳入统计
  valid_lengths <- word_lengths[word_lengths %in% 1:9]
  # 统计各长度的出现次数
  length_freq <- table(valid_lengths)
  # 将统计值填入矩阵对应位置
  result[names(length_freq), sentence_idx] <- as.numeric(length_freq)
}

# 打印最终统计结果
print(result)

实现说明

  • 提前初始化0值矩阵,没有对应长度单词的位置会自动保留0,不需要额外补值
  • 用R内置的nchar()函数直接计算单词字符长度,适配前置步骤拆分好的单词列表格式
  • 统计前先过滤长度超出1-9范围的单词,避免矩阵索引报错
  • 用table()函数快速完成频次统计,不需要手动逐长度计数,代码更简洁

运行后得到的输出格式如下(数值为对应长度单词的出现次数):

第1句 第2句 第3句 第4句
1字母长度    1    1    2    0
2字母长度    0    2    2    2
3字母长度    0    1    2    3
4字母长度    2    3    2    2
5字母长度    1    5    2    2
6字母长度    1    0    1    0
7字母长度    0    1    1    1
8字母长度    0    0    0    0
9字母长度    0    1    0    1

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.08.27 01:48:14