首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
社区首页 >问答首页 >如何在R中使用样本权重

如何在R中使用样本权重
EN

Stack Overflow用户
提问于 2014-05-25 15:13:10
回答 1查看 4.8K关注 0票数 1

我计划对伦理问题的观点进行多组验证性因素分析。我将比较比利时瓦隆尼亚和佛兰德地区的人。我的两个样本需要进行加权,以便在年龄、性别、教育和政党选择方面代表他们的人口。

在我的数据集中已经提供的抽样权重。然后,我创建了一个变量wreg,为来自瓦隆尼亚和佛兰德的受访者组合权重。

我是R新手,阅读关于lavaan.surveysvydesign的文档来了解代码。然而,我还没有成功地写出正确的东西。我总是收到关于权重部分的错误信息。显然,程序不能正确地读取抽样权重变量。

下面是我使用的代码:

代码语言:javascript
代码运行次数:0
运行
复制
library(lavaan.survey)

f <- "C:/.../bges07_small.csv"
s <- read.csv(f,sep=";")

r <- s[is.na(s$flawal),]

rDesign <- svydesign(ids=~1, data=r, weights=~wreg)

model.1 <- 'ethic =~ q96_1+ q96_2 +q96_3'

fit <- cfa(model.1, data=r,ordered=c("q96_1","q96_2","q96_3"))

summary(fit, fit.measures=TRUE, modindices=FALSE,standardized=FALSE)

这是我收到的错误信息:

代码语言:javascript
代码运行次数:0
运行
复制
Erreur dans 1/as.matrix(weights) : 
  argument non numérique pour un opérateur binaire

关于如何用R写我的模型有什么建议吗?非常感谢!

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2014-05-27 13:10:12

summary(r$wreg)的结果来看,您的权重列似乎是一个因素,而不是一个数字向量。确保您正确地读取了数据,并且该列不包含任何类似字符的值。您可以用

代码语言:javascript
代码运行次数:0
运行
复制
r$wreg <- as.numeric(r$wreg)

在运行模型之前。而且,这些看起来像非常大的重量值。你确定他们是对的吗?

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/23857962

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档