[R-meta] Help specifying a three-level model

Frank Bosco met@ @end|ng |rom |r@nkbo@co@com
Wed Feb 10 18:54:05 CET 2021


Greetings to all,

I seek help specifying a three-level model. I suspect I need just syntax 
help, but it might be more complicated. I’ve examined some previous 
examples, but none seem to address my specific need. Hoping there’s a 
three-level guru out there willing to help. Any help would be greatly 
appreciated.

Here’s the situation: I have 94 effect sizes pertaining to a particular 
bivariate relation. The 94 effect sizes are nested within 56 independent 
samples. In turn, the 56 independent samples are nested within 9 
countries. The data file is at the URL in the script below.

For each country, I have values for three Hofstede cultural dimensions 
(these are continuous variables): Individualism-collectivism, power 
distance, and masculinity/femininity. For each independent sample, I 
have a control variable: publication year.

I would like to ascertain the incremental variance (which, I presume, 
would be a pseudo R^2) for the addition of the three cultural factors 
(i.e., all three cultural factors entered simultaneously).

At any rate, as shown below, I’m somewhat lost at the moment (I'm trying 
to address a reviewer comment). I paste below the variable names and my 
script skeletons.

Thanks in advance for any help provided.

Frank

=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-

Variable names
yi
vi
SampleID
Country
PubYear
HOF_powerDist
HOF_indivCol
HOF_masFem

=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-

#-- Script attempt (Fit0 contains only the control variable [PubYear]; 
Fit1 contains the control variable and the three cultural factors [HOF_*])

library(metafor)
dat <- read.csv("http://www.frankbosco.com/test.csv")

Fit0 <- rma.mv(yi, vi,
               mods = ~ PubYear + ??? -1,     #-- (not sure whether I 
need ‘-1’ here)
               random = ???,  #-- I've tried several nesting approaches 
- some cause an error
               data = dat,
               struct = ???     #-- (Not sure what I need here)
)

Fit1 <- rma.mv(yi, vi,
               mods = ~ PubYear + HOF_powerDist + HOF_indivCol + 
HOF_masFem -1,      #-- (not sure whether I need ‘-1’ here)
               random = ???,  #-- I've tried several nesting approaches 
- some cause an error
               data = dat,
               struct = ???      #-- (Not sure what I need here)
)

anova(Fit0, Fit1)

=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-


Frank Bosco, Ph.D.
Director, metaBUS.org
Associate Professor
School of Business
Department of Management

Virginia Commonwealth University
Snead Hall
301 West Main Street, Room B4151
Richmond, Virginia 23284
804 828-3197 • Fax: 804 828-1602
business.vcu.edu



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