本文介绍了如何在R中统计像STATA命令计数的观测值的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!
问题描述
aaa<- data.frame(sex=c(1,1,2,2,1,1), group1=c(1,2,1,2,2,2),group2=c("A","B","A","B","A","B"))
Stata命令:
count if sex==1 & group1==2
count if sex==1 & group2=="A"
计数统计满足指定条件的观测值的数量。如果未指定条件,则COUNT显示数据中的观测值数量。如何计算R?谢谢。
推荐答案
with
函数允许您使用速记列引用,sum
将对表达式中的TRUE
结果进行计数。
sum(with(aaa, sex==1 & group1==2))
## [1] 3
sum(with(aaa, sex==1 & group2=="A"))
## [1] 2
正如@mnel指出的,您还可以这样做:
nrow(aaa[aaa$sex==1 & aaa$group1==2,])
## [1] 3
nrow(aaa[aaa$sex==1 & aaa$group2=="A",])
## [1] 2
这样做的好处是您可以:
nrow(aaa)
## [1] 6
并且,行为与Stata的count
几乎完全匹配(不考虑语法)。
这篇关于如何在R中统计像STATA命令计数的观测值的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持!