[R] Need help with writing survey design for multilevel analysis
Jim Lemon
drj|m|emon @end|ng |rom gm@||@com
Fri Jan 28 03:47:58 CET 2022
Hi Love,
I'm not entirely on top of your question, but perhaps if you look at this:
https://cran.r-project.org/web/packages/pricesensitivitymeter/vignettes/using-weighted-data.html
it will get you started. Feel free to repost if this doesn't solve your problem.
Jim
On Wed, Jan 26, 2022 at 8:18 PM Love Umesi <yugohlav using gmail.com> wrote:
>
> Hello,
>
> I am new in using R, and I need to run a multilevel analysis (on two
> levels) using Cox frailty survival model on a survey data (Nigeria
> Demographic and Health Survey Data).
>
> My problem is how to write the design weight using the two weights needed
> and apply them to the analysis.
>
> I have identified the needed variables for the survey design, which are :
>
> psu/cluster=~v021
> individual-level weight=~wt1_1
> cluster-level weigh=~wt2_1
> strata/stratum=~v022
>
> Please can someone help me with the survey design (svydesign) code and how
> to include it and the weights in a model.
>
> I have tried to generate a minimum reproducible data
>
> To view the minimum reproducible data: datapasta::df_paste (head(rcom2018,
> 10)[, c('pid', 'study_time', 'died', 'v021', 'v022', 'wt2_1', 'wt1_1',
> 'v024', 'v025', 'mat_edu')])
>
>
> I understand I have to use svycoxph in the model. Please how do I include
> survey design and account for the 2 weights in the gamma frailty model
> below?
>
> Frailty1 <- coxph (Surv(study_time, died) ~ factor(v024) + factor(mat_edu)
> + v025 + frailty(v021,distribution="gamma"), data=rcom2018)
>
>
> Really looking forward to your help as my project is hanging on this.
>
> Many thanks.
>
> Love Umesi
>
> library(survey)#> Warning: package 'survey' was built under R version
> 4.0.5#> Loading required package: grid#> Loading required package:
> Matrix#> Loading required package: survival#> Warning: package
> 'survival' was built under R version 4.0.5#> #> Attaching package:
> 'survey'#> The following object is masked from 'package:graphics':#>
> #> dotchart
> library(survival)
>
>
> rcom1 <- data.frame(
> pid = c(1,2,3,4,
> 5,6,7,8,9,10,11,12,13,14,15,16,17,
> 18,19,20,21,22,23,24,25,26,27,28,29,
> 30,31,32,33,34,35,36,37,38,39,40,
> 41,42,43,44,45,46,47,48,49,50),
> study_time = c(13,9,17,
> 31,39,22,24,0,23,12,9,35,18,20,60,
> 18,5,46,26,54,37,51,31,55,27,15,39,6,
> 29,0,9,40,23,12,35,56,14,40,57,42,
> 5,42,39,39,54,19,52,42,7,28),
> died = c(0,0,0,0,
> 0,0,0,1,0,0,0,0,0,0,0,0,0,0,0,0,
> 0,0,0,0,0,0,0,0,0,1,0,0,0,0,0,
> 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0),
> v021 = c(1,1,1,1,
> 1,1,1,1,1,1,1,1,1,1,1,2,2,2,2,2,
> 2,2,2,2,2,2,2,2,2,2,2,2,2,2,3,
> 3,3,3,3,3,3,3,3,3,3,3,3,3,4,4),
> v022 = c("1","1",
> "1","1","1","1","1","1","1","1","1","1",
> "1","1","1","1","1","1","1","1","1",
> "1","1","1","1","1","1","1","1","1",
> "1","1","1","1","1","1","1","1","1","1",
> "1","1","1","1","1","1","1","1","1",
> "1"),
> v012 = c(40,37,27,
> 27,24,32,35,35,34,20,28,28,26,24,24,
> 25,26,26,26,26,28,27,25,25,27,26,
> 26,21,21,31,36,36,27,23,32,32,33,33,
> 33,28,25,37,33,34,33,28,28,29,33,33),
> wt2_1 =
> c(401.200012207031,401.200012207031,401.200012207031,
> 401.200012207031,401.200012207031,
>
> 401.200012207031,401.200012207031,401.200012207031,
>
> 401.200012207031,401.200012207031,401.200012207031,
> 401.200012207031,401.200012207031,
>
> 401.200012207031,401.200012207031,401.200012207031,
>
> 401.200012207031,401.200012207031,401.200012207031,
> 401.200012207031,401.200012207031,
>
> 401.200012207031,401.200012207031,401.200012207031,
> 401.200012207031,401.200012207031,
>
> 401.200012207031,401.200012207031,401.200012207031,
>
> 401.200012207031,401.200012207031,401.200012207031,
> 401.200012207031,401.200012207031,
>
> 401.200012207031,401.200012207031,401.200012207031,
> 401.200012207031,401.200012207031,
>
> 401.200012207031,401.200012207031,401.200012207031,
>
> 401.200012207031,401.200012207031,401.200012207031,
> 401.200012207031,401.200012207031,
>
> 401.200012207031,401.200012207031,401.200012207031),
> wt1_1 =
> c(2.5074667930603,2.5074667930603,2.5074667930603,
>
> 2.5074667930603,2.5074667930603,2.5074667930603,
>
> 2.5074667930603,2.5074667930603,2.5074667930603,
> 2.5074667930603,2.5074667930603,
>
> 2.5074667930603,2.5074667930603,2.5074667930603,
>
> 2.5074667930603,5.1194109916687,5.1194109916687,
>
> 5.1194109916687,5.1194109916687,5.1194109916687,
> 5.1194109916687,5.1194109916687,
>
> 5.1194109916687,5.1194109916687,5.1194109916687,
>
> 5.1194109916687,5.1194109916687,5.1194109916687,
>
> 5.1194109916687,5.1194109916687,5.1194109916687,
> 5.1194109916687,5.1194109916687,
>
> 5.1194109916687,2.40910983085632,2.40910983085632,
>
> 2.40910983085632,2.40910983085632,2.40910983085632,
> 2.40910983085632,2.40910983085632,
>
> 2.40910983085632,2.40910983085632,2.40910983085632,
>
> 2.40910983085632,2.40910983085632,2.40910983085632,
> 2.40910983085632,1.06203985214233,
> 1.06203985214233),
> v024 = c("1","1",
> "1","1","1","1","1","1","1","1","1","1",
> "1","1","1","1","1","1","1","1","1",
> "1","1","1","1","1","1","1","1","1",
> "1","1","1","1","1","1","1","1","1","1",
> "1","1","1","1","1","1","1","1","1",
> "1"),
> v025 = c("1","1",
> "1","1","1","1","1","1","1","1","1","1",
> "1","1","1","1","1","1","1","1","1",
> "1","1","1","1","1","1","1","1","1",
> "1","1","1","1","1","1","1","1","1","1",
> "1","1","1","1","1","1","1","1","1",
> "1"),
> mat_edu = c("5","5",
> "5","4","4","5","4","4","4","4","4","4",
> "5","5","5","5","5","5","4","4","5",
> "4","4","4","5","3","3","4","4","5",
> "5","5","5","4","2","2","0","0","0","5",
> "5","0","1","5","5","3","3","5","5",
> "5")
> )
>
> Frailty1 <- coxph (Surv(study_time, died) ~ factor(v024) +
> factor(mat_edu) + v025 + frailty(v021,distribution="gamma"),
> data=rcom1)#> Error in `contrasts<-`(`*tmp*`, value = contr.funs[1 +
> isOF[nn]]): contrasts can be applied only to factors with 2 or more
> levels
>
> [[alternative HTML version deleted]]
>
> ______________________________________________
> R-help using r-project.org mailing list -- To UNSUBSCRIBE and more, see
> https://stat.ethz.ch/mailman/listinfo/r-help
> PLEASE do read the posting guide http://www.R-project.org/posting-guide.html
> and provide commented, minimal, self-contained, reproducible code.
More information about the R-help
mailing list