#r #dplyr #plyr #frequency #sapply
#r #dplyr #plyr #частота #sapply
Вопрос:
У меня есть порядковый фрейм данных, в котором есть ответы в формате опроса. Я хочу преобразовать каждый фактор в возможный столбец, чтобы получить их по частотам определенного события.
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
Таблица частот с учетом факторов q28
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
Комментарии:
1. Вы проверяли
xtabs
2. Нет, сэр, не могли бы вы уточнить или предоставить какие-либо ссылки для этого, с уважением
3. Пожалуйста, поделитесь образцами данных с
dput
4. drive.google.com/open?id=1eyJf96Wgty1QI3dY4cxWzxKQN1_iptpo
Ответ №1:
Это даст вам подсчет количества уникальных комбинаций. То, что вы просите, невозможно, поскольку между уровнями пола, расы и возраста будут совпадения.
mtfinalf<-mtfinal %>%
group_by(q28,age,race,sex) %>%
tally()