我有一个序数数据框,其中包含调查格式的答案。我想将每个因子转换为一个可能的列,以便通过特定事件的频率来获取它们。
I have tried lapply, dplyr to get frequencies but failed
as.data.frame(apply(mtfinal, 2, table))
和
mtfinalf<-mtfinal %>%
group_by(q28) %>%
summarise(freq=n())
以data.frame形式的预期结果
Frequency table with respect to q28's factors
Expected Results in the form of data.frame
q28 sex1 sex2 race1 race2 race3 race4 race5 race6 race7 age1 age2
2 0
3 0
4 23
5 21
Actual Results
$age
1 2 3 4 5 6 7
6 2 184 520 507 393 170
$sex
1 2
1239 543
$grade
1 2 3 4
561 519 425 277
$race7
1 2 3 4 5 6
179 21 27 140 17 1307
7
91
$q8
1 2 3 4 5
127 259 356 501 539
$q9
1 2 3 4 5
993 224 279 86 200
$q28
2 3 4 5
1034 533 94 121
答案 0 :(得分:0)
这将为您提供许多独特组合的数量。您要问的是不可能的,因为性别,种族和年龄之间可能会有重叠。
mtfinalf<-mtfinal %>%
group_by(q28,age,race,sex) %>%
tally()