gpt4 book ai didi

r - 计算调查对象中某个值的百分比/频率

转载 作者:行者123 更新时间:2023-12-01 23:30:02 28 4
gpt4 key购买 nike

我有一个由许多变量组成的全国调查,就像这个(为了简单起见,我省略了一些变量):

year  id  y.b   sex   income  married   pens   weight
2002 1 1950 F 100000 1 0 1.12
2002 2 1943 M 55000 1 1 0.55
2004 1 1950 F 88000 1 1 1.1
2004 2 1943 M 66000 1 1 0.6
2006 3 1966 M 12000 0 1 0.23
2008 3 1966 M 24000 0 1 0.23
2008 4 1972 F 33000 1 0 0.66
2010 4 1972 F 35000 1 0 0.67

其中 id 是受访者,y.b 是出生年份,已婚是一个假人(1 个已婚,0 个单例),pens 是一个假人,如果此人投资于补充养老金形式,则取值为 1;权重是调查权重。

考虑到原始调查是由 2002 年到 2014 年的多达 40k 次观察组成的(我对其进行了过滤,以便只有出现超过一次的个体)。我使用这个命令来创建一个调查对象:
d.s <- svydesign(ids=~1, data=df, weights=~weight)

既然 df 是加权的,我想找到例如女性或已婚人士投资补充养老金的百分比;我在 R 帮助和网络上阅读以找到获取百分比的命令,但我没有找到正确的命令。

最佳答案

# same setup
library(survey)

df <- data.frame(sex = c('F', 'M', 'F', 'M', 'M', 'M', 'F', 'F'),
married = c(1,1,1,1,0,0,1,1),
pens = c(0, 1, 1, 1, 1, 1, 0, 0),
weight = c(1.12, 0.55, 1.1, 0.6, 0.23, 0.23, 0.66, 0.67))

d.s <- svydesign(ids=~1, data=df, weights=~weight)

# subset to women only then calculate the share with a pension
svymean( ~ pens , subset( d.s , sex == 'F' ) )

关于r - 计算调查对象中某个值的百分比/频率,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/39898265/

28 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com