R 如何在其中一个变量上使用过滤器进行tapply
我正在使用R 如何在其中一个变量上使用过滤器进行tapply,r,tapply,R,Tapply,我正在使用tapply函数来获得另一个变量的变量计数。下面是代码行:tapply(vip$VAR1,vip$VAR2,length) 但是,我只想筛选在vip$VAR1上具有值“1”的观察值,我可以用tapply来完成吗 dat <- read.table(text = " VAR1 VAR2 admit num 0 0 0 7 0 0 1 1 0 1 0
tapply
函数来获得另一个变量的变量计数。下面是代码行:tapply(vip$VAR1,vip$VAR2,length)
但是,我只想筛选在vip$VAR1
上具有值“1”的观察值,我可以用tapply
来完成吗
dat <- read.table(text = " VAR1 VAR2 admit num
0 0 0 7
0 0 1 1
0 1 0 3
0 1 1 7
1 0 0 5
1 0 1 1
1 1 0 0
1 1 1 6", header = TRUE)
dat这会起作用吗
tapply(dat[dat$VAR1==1,]$VAR1,dat[dat$VAR1==1,]$VAR2,length)
或者更简单(来自阿南达·马托的评论):
示例数据中的“VAR1”和“VAR2”在哪里?修复了数据框,我发现以下内容更容易阅读:使用(dat[dat$VAR1==1,],tapply(VAR1,VAR2,length))
。
with(dat[dat$VAR1 == 1, ], tapply(VAR1, VAR2, length))