R中的更新函数

update function in R

我正在尝试对 survey.design 对象使用 update 函数。例如,我想创建一个变量,它是其他 4 个变量的平均值,如下所示

x1<-runif(3)
x2<-runif(3)
x3<-runif(3)
population=10000
testdf<-data.frame(x1,x2,x3,population)
testsvy<-svydesign(id=~1,weights=c(30,30,30),data=testdf)
testsvy<-update(testsvy,avg=mean(c(x1,x2,x3)))

然而,这 returns 每个人的相同数字的矢量。一定有问题。或者我可以修改 test$variables,但我不认为这是最简单的方法...

好的,我自己得到了答案...希望它可以更简单,因为我输入了三次对象名称...

testsvy<-update(testsvy,avg2=rowMeans(testsvy$variables[,c("x1","x2","x3")],na.rm=TRUE))