我正在与我认为应该如此简单的事情作斗争! 我在R中研究了频率表,无法弄清楚要做什么。
我在这个数据集中有一个包含不同问卷的数据集。 即,第一份调查问卷由10个项目组成,每个项目/变量都有一个单独的列,即问题1,问题2,问题3等都将拥有它自己的专栏。
在每一栏中,有400个回复(即参与者),每个参与者给出0,1或2的回复。
我想做的就是对所有变量生成频率计数(即问题1,问题2,问题3等),以便我得到所有变量的摘要 - 例如:
"问题1"
0 = 100
1 = 200
2 = 97
NA = 3
总计= 400
如何在一个简单,整洁的表中生成它?
答案 0 :(得分:2)
df #the name of your raw table
table(df$columnName) #This command should create the table for you
如果您还想在结尾看到总数,可以这样做:
exampleTable <- table(df$columnName)
exampleTable <- cbind(exampleTable, Total = rowSums(exampleTable))
答案 1 :(得分:0)
最简单的方法确实是Y.Z的解决方案。使用 table()
,但更好的方法是使用 quesionr 包中的 freq()
。它会自动显示包含和不包含缺失值的百分比。
如果你想一次为所有列创建一个大频率表,你可以查看这个问题:Create frequency tables for multiple factor columns in R
#install the package
install.packages("questionr")
#load the libraries
library(questionr)
#Make some reproducible data
set.seed(20)
colours <- sample(x = c("red", "green", "blue", NA), size = 76, replace = TRUE)
#Make a frequency table of the data
freq(colours)
n % val%
blue 11 14.5 17.5
green 25 32.9 39.7
red 27 35.5 42.9
NA 13 17.1 NA