2
分組我有一個包含兩個變量的數據幀,這樣一個變量的所有值的列表:創建由另一個變量中的R
df <- data.frame(group=c(1,1,1,2,2,3,3,4),
type=c("a","b","a", "b", "c", "c","b","a"))
> df
group type
1 1 a
2 1 b
3 1 a
4 2 b
5 2 c
6 3 c
7 3 b
8 4 a
欲產生表示每個組的組合的表它在數據框中的類型是一個變量,例如
group alltypes
1 1 a, b
2 2 b, c
3 3 b, c
4 4 a
輸出將總是列出的相同順序的類型(例如組2和3得到同樣的結果),並就沒有重複(例如組1不爲「A,B,A」)。
我試着這樣做使用dplyr和總結,但我不知道如何得到它符合這兩個條件 - 我試過的代碼是:
> df %>%
+ group_by(group) %>%
+ summarise(
+ alltypes = paste(type, collapse=", ")
+ )
# A tibble: 4 × 2
group alltypes
<dbl> <chr>
1 1 a, b, a
2 2 b, c
3 3 c, b
4 4 a
我也試着轉向型成一套個人計數,但不知道這是否真的有用:
> df %>%
+ group_by(group, type) %>%
+ tally %>%
+ spread(type, n, fill=0)
Source: local data frame [4 x 4]
Groups: group [4]
group a b c
* <dbl> <dbl> <dbl> <dbl>
1 1 2 1 0
2 2 0 1 1
3 3 0 1 1
4 4 1 0 0
任何建議將不勝感激。
嘗試添加排序(唯一的(類型))至糊狀打電話給你第一個方案 – www
這次看起來這不是問題,但爲了將來的參考,請包括創建數據集的代碼(如我添加的內容),並省略'>'和'+'控制檯字符,以便有人可以複製並粘貼您的示例代碼來運行它。 –