今使ってddply
います。数字を扱うのはとても簡単です。サブグループの平均または標準偏差を取るなど。
しかし、私は文字列を扱うのに苦労しています。各サブグループの同じ列の文字列を結合したいのですが、できませんでした。私は試しましcbind
paste
た、など。誰でも助けを提供できますか?
collapse=""
貼り付けステートメントに追加
ddply(mtcars, .(carb), summarize, cyl_concatenated = paste(cyl, collapse = ""))
# carb cyl_concatenated
#1 1 4664444
#2 2 8444888444
#3 3 888
#4 4 6686688888
#5 6 6
#6 8 8
Dasonにはアプローチがあるようです。私はむしろ別々のものを別々に保ち、提案します:
ddply(mtcars, .(carb), summarize, cyl_list = list(as.character(cyl)))
#-----------
carb cyl_list
1 1 4, 6, 6, 4, 4, 4, 4
2 2 8, 4, 4, 4, 8, 8, 8, 4, 4, 4
3 3 8, 8, 8
4 4 6, 6, 8, 6, 6, 8, 8, 8, 8, 8
5 6 6
6 8 8
Dason を変更して collapse=", " を使用することもできます。これは上記と同じように見えますが、構造が異なります。そのlist()
例を使用するときに文字に変換する必要がある場合、または因子変数の整数コーディングを取得します。