这可能非常简单,但由于我没有深入研究,我希望能在这里发布一些帮助。
我想计算分类变量数据集的按比例和比例的比例和标准误差。所以我有2个变量v1
是1到4而v2
是1到9.我想计算1的比例(也是2,3 ... 9({{1} }}))由v2
组成。
手工操作很容易因为v1
的使用,但我不想手工做:)
用更简单的方式说:我想找%,但我们可以使用mean,因为它是数值变量。我们有1000个人,其中300个属于table(v1, v2)
的类别1,有200个属于v1
的类别2等。v1
为相同,类别1为400,依此类推。如果我按v2
组计算类别1(v1
)的百分比,那么将是300 / 400,200 / 400等等。
dataframe sample
v2
期望的输出:按组id v1 v2
1 1 1
2 1 1
3 2 1
4 2 1
5 3 2
6 3 2
7 4 2
答案 0 :(得分:0)
尝试:
library(data.table)
setDT(dt)[v1==1,list(meanv2=mean(v2), sev2=se(v2)),by=v3]
如果v1 == 1,则mean(v1)将等于1.
答案 1 :(得分:0)
这是我上面的问题的答案,但同时我问另一个问题。 我找到了执行此操作的代码,但我还需要计算标准错误
tapply(dt$v1, dt$v2, function(x){prop.table(table(x))})
标准错误是使用此公式SE = sqrt(p*(1-p)/n)
,其中p=proportion
和n=total population
。
我的问题是:如何在上面的代码中包含SE?
提前谢谢你!