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

如何便捷计算Likert量表数据按列统计的各选项频次

实现方案

方法1:基础R实现(无需额外依赖包)

先构造示例数据,再按列统计频次:

# 构造示例数据集
ds <- data.frame(
  c1 = c(1,2,3,3,2,1,1),
  c2 = c(1,2,3,4,5,3,5),
  c3 = c(5,5,4,3,1,1,1)
)

# 按列统计频次,固定水平为1~5保证缺失选项频次为0
freq_matrix <- apply(ds, 2, function(col) table(factor(col, levels = 1:5)))
# 转换为结构化数据框
result <- data.frame(
  选项 = rownames(freq_matrix),
  freq_matrix,
  row.names = NULL
)

输出的result就是你需要的结构化频次表,可直接用于后续分析。

方法2:tidyverse实现(适配后续复杂分析需求)

适合需要后续联动其他统计操作的场景:

library(dplyr)
library(tidyr)

result <- ds %>%
  # 宽表转长表
  pivot_longer(cols = everything(), names_to = "问题列", values_to = "选项") %>%
  # 统计每个列各选项的频次
  count(问题列, 选项) %>%
  # 补全所有1~5的选项,缺失的频次填0
  complete(问题列, 选项 = 1:5, fill = list(n = 0)) %>%
  # 长表转回宽表得到最终结果
  pivot_wider(names_from = "问题列", values_from = "n")

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.10.01 11:54:02