我想使用复合赋值管道运算符%<>%
。例如,使用下面的代码,我可以生成一个具有所需比例的简单数据框:
data("mtcars")
Vectorize(require)(package = c("magrittr", "gmodels"),
character.only = TRUE)
mtcars_sum <- CrossTable(mtcars$am, mtcars$cyl)$prop.row
如图所示:
> head(mtcars_sum)
y
x 4 6 8
0 0.1578947 0.2105263 0.6315789
1 0.6153846 0.2307692 0.1538462
我想进行相同的转换,但使用%<>
管道:
mtcars_sum %<>%
CrossTable(mtcars$am, mtcars$cyl)$prop.row
这会返回以下错误:
> mtcars_sum %<>%
+ CrossTable(mtcars$am, mtcars$cyl)$prop.row
Error in .$CrossTable(mtcars$am, mtcars$cyl) :
3 arguments passed to '$' which requires 2
我错过了什么?