[R-meta] Potential bug in clubSandwich::Wald_test()
Stefanou Revesz
@te|@noureve@z @end|ng |rom gm@||@com
Wed Mar 2 04:03:01 CET 2022
For sure, thank you very much.
Stefanou
On Tue, Mar 1, 2022 at 5:03 PM James Pustejovsky <jepusto using gmail.com> wrote:
> That approach uses a better variance estimator (CR2) but a very crude
> approximation to the distribution of the test statistic. I would guess that
> it would still have very poor small-sample properties for contexts such as
> your example, where the number of clusters is limited relative to the
> number of coefficients being tested.
>
> On Tue, Mar 1, 2022 at 4:00 PM Stefanou Revesz <stefanourevesz using gmail.com>
> wrote:
>
>> Thank you very much, James. Does changing the `test=` to another option
>> (e.g., "Naive-F") but keeping the `vcov="CR2"` might still be better than
>> the QM provided by the rma.mv() model itself?
>>
>> Wald_test(fit, constrain_zero(fit$btt), "CR2", test = "Naive-F")
>>
>> Stefanou
>>
>> On Tue, Mar 1, 2022 at 2:49 PM James Pustejovsky <jepusto using gmail.com>
>> wrote:
>>
>>> I cannot reproduce the error. Here is what I get:
>>> > Wald_test(fit, constrain_zero(fit$btt), "CR2")
>>> test Fstat df_num df_denom p_val sig
>>> HTZ 0 15 -0.55 NA
>>>
>>> The test you are trying to run is for a configuration where the HTZ test
>>> does not work well. It is a joint test of 15 coefficients but the data
>>> include only 28 distinct studies, so this is a very challenging scenario in
>>> terms of getting the small-sample approximation correct. In particular, the
>>> approximation leads to negative degrees of freedom and a corrected F
>>> statistic of zero because the number of coefficients is so large and the
>>> number of clusters is limited. In this situation, I would suggest using a
>>> cluster wild bootstrap test instead, as described in a recent paper by
>>> Megha Joshi and me:
>>>
>>> https://www.jepusto.com/publication/cluster-wild-bootstrap-for-meta-analysis/
>>>
>>> The syntax requires only minor modifications (although it takes a bit
>>> longer to compute):
>>>
>>> > library(wildmeta)
>>> > Wald_test_cwb(fit, constraints = constrain_zero(fit$btt), R = 1999,
>>> seed = 20220301)
>>> Test Adjustment CR_type Statistic R p_val
>>> 1 CWB CR0 CR0 Naive-F 1999 0.03951976
>>>
>>> James
>>>
>>> On Tue, Mar 1, 2022 at 11:15 AM Stefanou Revesz <
>>> stefanourevesz using gmail.com> wrote:
>>>
>>>> Dear Dr. Pustejovsky (and other Meta Experts),
>>>>
>>>> I've run into a potential bug in clubSandwich::Wald_test().
>>>>
>>>> Would you please confirm whether the error in the following
>>>> reproducible example is a bug or not? Any possible fix?
>>>>
>>>> Best,
>>>> Stefanou
>>>>
>>>> d <- read.csv("https://raw.githubusercontent.com/fpqq/w/main/f.csv")
>>>>
>>>> fit <- rma.mv(gi ~ teaching_level +pd_format +pd_content +
>>>> training_hr +time +outcome +area +
>>>> time_wk_whn +time_wk_btw +study_type,
>>>> V = v_gi,
>>>> random = ~1|study/obs,
>>>> data = d)
>>>>
>>>> Wald_test(fit, constrain_zero(fit$btt), "CR2")
>>>>
>>>> Error in symnum(x$p_val, corr = FALSE, na = FALSE, cutpoints = c(0,
>>>> 0.001, :
>>>> must have 2 'symbols' for logical 'x' argument
>>>>
>>>
[[alternative HTML version deleted]]
More information about the R-sig-meta-analysis
mailing list