[R-meta] When and how to use 'obs' vs 'type' in vcalc

Brendan Pearl brend@n @end|ng |rom brend@n@-b|t@@com
Sun Oct 1 13:11:19 CEST 2023


I think I have partly answered one of my questions: type lets me distinguish between types of constructs - in my case, highlighting outcomes that I expect to be correlated and distinguishing them from other outcomes where I expect them not be correlated.
It only made sense to me when I created a dataset with four outcomes (A, B, C, D). Within pairs were highly correlated with each other, but between pairs were only loosely correlated.

So my question now is: what is the 'right' way to number effect sizes:
1: Unique number to each extracted effect size within each article? (e.g. es.id1)
2: The same number to each row that has the same predictor-outcome pair? (e.g. es.id2)
3: A unique number to each extracted effect size across the whole dataset? (e.g. es.id3)

Brendan.


------- Original Message -------
On Sunday, October 1st, 2023 at 7:55 PM, Brendan Pearl via R-sig-meta-analysis <r-sig-meta-analysis using r-project.org> wrote:


> Hello,
> 
> I am trying to work out when to use "obs" vs "type" in vcalc when creating a V matrix from a long series of odds ratio effect sizes. Each article within the dataset reports multiple effect sizes (each is a predictor-outcome pair), and each article is nested within a larger dataset (i.e. some studies have used overlapping samples).
> For background: I plan to run a multivariate analysis (and then obtain robust cluster estimates) using this code:
> res_multivariate <- rma.mv(yi=yi,
> V,
> data=dat,
> random = ~1 | DATASET/STUDY,
> mods = ~ factor(RELATIONSHIP)-1,
> method = "REML" )
> 
> Question 1: Which is the 'correct' variable to set in vcalc ('obs' or 'type')? I get the exact same V matrix regardless of whether I use obs or type. This is the code I am running (changing the obs/type variable):
> V <- vcalc(vi, cluster=DATASET, subgroup = STUDY, data=dat, rho=0.6, obs = es.id3)
> 
> Question 2: What is the 'correct' way to label the obs/type?
> 1: Unique number to each extracted effect size within each article? (e.g. es.id1)
> 2: The same number to each row that has the same predictor-outcome pair? (e.g. es.id2)
> 3: A unique number to each extracted effect size across the whole dataset? (e.g. es.id3)
> 
> For reference: the following is a representation of my dataset with effect sizes and sampling variances removed for brevity:
> 
> structure(list(DATASET = c("Dataset_A", "Dataset_A", "Dataset_B",
> "Dataset_A", "Dataset_A", "Dataset_B", "Dataset_A", "Dataset_B",
> "Dataset_B", "Dataset_A", "Dataset_A", "Dataset_B"), STUDY = c("Study_A",
> "Study_B", "Study_D", "Study_A", "Study_B", "Study_E", "Study_A",
> "Study_D", "Study_F", "Study_A", "Study_C", "Study_F"), OUTCOME = c("Homelessness",
> "Homelessness", "Homelessness", "Incarceration", "Incarceration",
> "Incarceration", "Homelessness", "Homelessness", "Homelessness",
> "Incarceration", "Incarceration", "Incarceration"), PREDICTOR = c("Female",
> "Female", "Female", "Female", "Female", "Female", "Younger_Older",
> "Younger_Older", "Younger_Older", "Younger_Older", "Younger_Older",
> "Younger_Older"), es.id1 = c(1, 1, 1, 3, 2, 1, 2, 2, 2, 4, 1,
> 1), es.id2 = c(1, 1, 1, 2, 2, 2, 3, 3, 3, 4, 4, 4), es.id3 = c(1,
> 5, 8, 3, 6, 10, 2, 9, 12, 4, 7, 11)), row.names = c(NA, -12L), class = c("tbl_df",
> "tbl", "data.frame"))
> [[alternative HTML version deleted]]
> 
> _______________________________________________
> R-sig-meta-analysis mailing list @ R-sig-meta-analysis using r-project.org
> To manage your subscription to this mailing list, go to:
> https://stat.ethz.ch/mailman/listinfo/r-sig-meta-analysis



More information about the R-sig-meta-analysis mailing list