常識かもしれないのだけど、知らなかったので。
dplyrでgroup_byした後に、グループの中でテキストをくっつけた変数をつくりたい時があります。
そんな時にはtoStringを使うっぽいです。(※これ間違ってました。最後に追記あります。)
1. 試すためのデータフレームを作ります。
> data <- data.frame(aa = c(“a”,”b”,”c”,”a”), bb = c(“aaa”,”aaa”,”aba”,”ccc”))
2. aaをgroup_byして、bbをくっつけます。
> data %>% group_by(aa) %>% summarize(sumtxt = toString(bb))
3. 結果を出してみます。
1行目と4行のaaが同一なので、bbの部分が横にくっついた形になっています。
Source: local data frame [3 x 2]
aa sumtxt
1 a aaa, ccc
2 b aaa
3 c aba
これだけです。おしまい。
他にやり方あるんですかね?
ありましたw
@kos59125さんと@yutannihilationさんに突っ込みをもらいました。
data %>% group_by(aa) %>% summarise(sumtxt = paste0(bb, collapse = “,”))
で同じことができました。ちなみにsummarizeのほうでは何故かできなかったです。
修正遅くて申し訳ないです。そして寿司・・・