Я пытаюсь сделать простой table
после того, как у меня есть данные, но с использованием dplyr
.Подсчет числа значений на расплавленные данные с использованием dplyr
Мои данные выглядят как этот
cluster 21:30 21:45
4 c alone alone
6 b % %
12 e partner partner
14 b partner partner
20 b alone alone
22 c partner partner
С table
я могу просто
table(dta$cluster)
a b c d e
2 8 5 1 4
Как я могу получить те же результаты, используя melt
и summarise
?
library(dplyr)
library(reshape2)
dta %>%
melt(id.vars = 'cluster') %>%
group_by(cluster) %>%
summarise(n())
Что мне нужно именно это table
кластеры после того, расплавить данные.
Так правильно считать это data.frame
dta %>%
melt(id.vars = 'cluster')
Ожидаемый выход это один
cluster variable value n_cluster
1 a 21:30 . 2
2 a 21:30 nuclear 2
3 a 21:45 . 2
4 a 21:45 nuclear 2
5 b 21:30 % 8
6 b 21:30 partner 8
7 b 21:30 alone 8
8 b 21:30 partner 8
9 b 21:30 partner 8
10 b 21:30 nuclear 8
11 b 21:30 partner 8
12 b 21:30 partner 8
13 b 21:45 % 8
14 b 21:45 partner 8
15 b 21:45 alone 8
16 b 21:45 partner 8
17 b 21:45 partner 8
18 b 21:45 nuclear 8
19 b 21:45 partner 8
20 b 21:45 partner 8
21 c 21:30 alone 5
22 c 21:30 partner 5
23 c 21:30 % 5
24 c 21:30 partner 5
25 c 21:30 partner 5
26 c 21:45 alone 5
27 c 21:45 partner 5
28 c 21:45 % 5
29 c 21:45 partner 5
30 c 21:45 partner 5
31 d 21:30 partner 1
32 d 21:45 alone 1
33 e 21:30 partner 4
34 e 21:30 nuclear 4
35 e 21:30 nuclear 4
36 e 21:30 nuclear 4
37 e 21:45 partner 4
38 e 21:45 nuclear 4
39 e 21:45 nuclear 4
40 e 21:45 nuclear 4
Любая идея?
dta = structure(list(cluster = structure(c(3L, 2L, 5L, 2L, 2L, 3L,
5L, 3L, 1L, 3L, 1L, 2L, 5L, 3L, 2L, 2L, 2L, 2L, 4L, 5L), .Label = c("a",
"b", "c", "d", "e"), class = "factor"), `21:30` = structure(c(2L,
7L, 5L, 5L, 2L, 5L, 4L, 7L, 1L, 5L, 4L, 5L, 4L, 5L, 5L, 4L, 5L,
5L, 5L, 4L), .Label = c(".", "alone", "children", "nuclear",
"partner", "*", "%"), class = "factor"), `21:45` = structure(c(2L,
7L, 5L, 5L, 2L, 5L, 4L, 7L, 1L, 5L, 4L, 5L, 4L, 5L, 5L, 4L, 5L,
5L, 2L, 4L), .Label = c(".", "alone", "children", "nuclear",
"partner", "*", "%"), class = "factor")), .Names = c("cluster",
"21:30", "21:45"), row.names = c("4", "6", "12", "14", "20",
"22", "23", "28", "30", "32", "36", "38", "40", "42", "44", "48",
"50", "56", "57", "60"), class = "data.frame")
расплава {reshape2} –
да да да жаль – giacomo
вы не; т нужно расплавить, и у вас есть свой ответ: 'ДТА%>% group_by (кластер)%>% реферирования (п())' – jeremycg