调查数据
先查看各命令展开的示例,再按需展开其他选项及 R 实现。改写代码前,请阅读适用条件及差异说明。
svy
考虑抽样设计的 logit 模型
Stata
svy: logit y xR 包:survey
survey::svyglm(y ~ x, design = design, family = quasibinomial())与 Stata 有差异 先匹配抽样设计和缺失排除;R 与 Stata 的单 PSU 层规则、自由度和置信区间变换可能不同。
加权均值(考虑抽样设计)
Stata
svy: mean xR 包:srvyr
summarise(design, x = srvyr::survey_mean(x, na.rm = TRUE))与 Stata 有差异 先匹配抽样设计和缺失排除;R 与 Stata 的单 PSU 层规则、自由度和置信区间变换可能不同。
考虑抽样设计的回归
Stata
svy: regress y xR 包:survey
survey::svyglm(y ~ x, design = design)与 Stata 有差异 先匹配抽样设计和缺失排除;R 与 Stata 的单 PSU 层规则、自由度和置信区间变换可能不同。
加权比例(考虑抽样设计)
Stata
svy: tabulate xR 包:srvyr
design |> group_by(x) |> summarise(p = srvyr::survey_prop())与 Stata 有差异 先匹配抽样设计和缺失排除;R 与 Stata 的单 PSU 层规则、自由度和置信区间变换可能不同。
另有 3 个示例及替代实现
子总体估计
Stata
svy, subpop(rural): mean xR 包:srvyr
design |> filter(rural == 1) |> summarise(x = srvyr::survey_mean(x, na.rm = TRUE))与 Stata 有差异 对抽样设计对象筛选时会保留完整设计来估计方差,与 subpop() 一致。 先匹配抽样设计和缺失排除;R 与 Stata 的单 PSU 层规则、自由度和置信区间变换可能不同。
分组的加权均值(考虑抽样设计)
Stata
svy: mean x, over(g)R 包:srvyr
design |> group_by(g) |> summarise(x = srvyr::survey_mean(x, na.rm = TRUE))与 Stata 有差异 先匹配抽样设计和缺失排除;R 与 Stata 的单 PSU 层规则、自由度和置信区间变换可能不同。
带置信区间的加权比例
Stata
svy: proportion xR 包:srvyr
design |> group_by(x) |> summarise(p = srvyr::survey_prop(vartype = "ci"))与 Stata 有差异 先匹配抽样设计和缺失排除;R 与 Stata 的单 PSU 层规则、自由度和置信区间变换可能不同。
svydescribe
svyset
声明抽样设计
Stata
svyset psu [pweight = wt], strata(stratum)R 包:srvyr
design <- srvyr::as_survey_design(data, ids = psu, strata = stratum, weights = wt)与 Stata 有差异 先匹配抽样设计和缺失排除;R 与 Stata 的单 PSU 层规则、自由度和置信区间变换可能不同。