2016-09-09 5 views
-2

mtcarsでmtcars$group <- cut(mtcars$mpg,2, labels = c("small", "big"))は、グループ「小」と「大」で新しい列を作成します。r内のグループ内でのグループ化

mpgでグループを作成する方法はありますか?ただし、4,6,8、または任意の数のシリンダがデータフレームに表示されている車のグループ内にグループを作成する方法はありますか?

SAS 9.1は、引数がby,groupsvarのprocランク関数で可能にします。

+4

あなたが望む結果どのような全くわかりません(mtcars、ave(mpg、cyl、FUN = function(x)cut(x、2)))] 'あなたのためにやってください? – thelatemail

答えて

1

これは、グループ単位で行うことができます。 data.tableでは、1列でグループ化した後、私たちは「グループ」に(:=を)labelsを指定して割り当て、それを2としてbreaksと「燃費」をcut「CYL」と言う

library(data.table) 
as.data.table(mtcars)[, group := cut(mpg, breaks = 2, labels = c("small", "big")), cyl][] 
関連する問題