xtabs
可以制作一个汇总表,与cbind
结合对多个变量进行汇总,并按剩余变量进行分组:
df<-data.frame(publication_date=c("2015 Jul","2015 Jul","2015 Aug","2015 Aug"),
Asym=c(3,5,1,2),
Auth=c(5,7,2,3),
Cert=c(1,2,3,4))
xtabs(cbind(Auth, Asym, Cert)~., data=df)
#publication_date Auth Asym Cert
# 2015 Aug 5 3 7
# 2015 Jul 12 8 3
是否有一种方法可以通过编程方式绑定除一个变量之外的所有变量,特别是不写出所有变量名(例如,如果df有3个以上的列)。
我试过了
xtabs(cbind(df[2:4])~., data=df)
xtabs(cbind(names(df[2:4]))~., data=df)
#Error in ... variable lengths differ
2条答案
按热度按时间cwdobuhd1#
使用
paste/sprintf
创建公式对象或者像@G. Grothendieck提到的,只要一个字符串作为公式就足够了
llew8vvj2#
我们可以使用lapply/tapply,然后设置dimname的名称。