Open emyanuthomas opened 5 years ago
This is a read only mirror of CRAN, please see the DESCRIPTION file for the package authors.
It is because some of your bx are positive and others are negative. If you replace with:
Bx=abs(ldlc) By = chdlodds*sign(ldlc)
then you should get Isq = 91.9%.
Hi, I was trying to calculate I.sq, but noticed that I.sq reported by mr_egger() function and that manually calculated by the following code shows different results. Q = sum((Bxse/Byse)^-2*(Bx/Byse-weighted.mean(Bx/Byse, w=(Bxse/Byse)^-2))^2) Isq = max(0, (Q-(length(Bx)-1))/Q).
For eg. mr_egger(mr_input(bx = ldlc, bxse = ldlcse, by = chdlodds, byse = chdloddsse)) reports Isq = 91.9% while the following code report Isq= 0.9647499 Bx=ldlc Bxse = ldlcse By = chdlodds Byse = chdloddsse Q = sum((Bxse/Byse)^-2*(Bx/Byse-weighted.mean(Bx/Byse, w=(Bxse/Byse)^-2))^2) Isq = max(0, (Q-(length(Bx)-1))/Q)
Can you help me understand why this difference?