guido-s / netmeta

Official Git repository of R package netmeta
http://cran.r-project.org/web/packages/netmeta/index.html
GNU General Public License v2.0
29 stars 13 forks source link

Network meta analysis of published summary survival data #7

Closed prabpharm closed 4 years ago

prabpharm commented 4 years ago

Dear Guido, I am trying to run an NMA using netmeta, where effect size is hazard ratio (confidence interval) using the following code: nma1 <- netmeta(TE = lnHR, seTE = lnSE, treat1 = treat1, treat2 = treat2, studlab = study, sm = "HR") As you highlighted in one of the issues discussed earlier https://github.com/guido-s/netmeta/issues/4#issue-399944434, I have used log of hazard ratio (lnHR) and its SE (lnSE). I imputed these variables separately and added to my dataframe. My question is, does the netmeta function has any argument/other mechanism to calculate logs in a single line of code, or for calculating SE from CIs? I tried to find the solution in the package documentation but failed (maybe due to my limited understanding).

My second question is not about the netmeta package, but about NMA is general, I am not sure if should ask you about this here. I am pooling only two studies (and two treatment comparisons) in this NMA. Does that make any sense, pooling just two comparisons?

Many thanks for responding, and apologies if I had failed to comply to etiquette of this platform, as this is my first step here, I am no programmer or statistician, just trying to learn a bit.

Regards, Prabhakar

guido-s commented 4 years ago

Dear Prabhakar,

You can use R function metagen to calculate the standard error of the log hazard ratio from the confidence interval:

study <- c("FCG on CLL 1996", "Leporrier 2001", "Rai 2000", "Robak 2000")
HR <- c(0.55, 0.92, 0.79, 1.18)
lower.HR <- c(0.28, 0.79, 0.59, 0.64)
upper.HR <- c(1.09, 1.08, 1.05, 2.17)
# Input must be log hazard ratios, not hazard ratios
m <- metagen(log(HR), lower = log(lower.HR), upper = log(upper.HR),
             studlab = study, sm = "HR")
# Log hazard ratio
m$TE
# Standard error of log hazard ratio
m$seTE

print(metagen(m$TE, m$seTE, sm = "HR", studlab = m$studlab), digits = 2)

Concerning your second question, it is possible to conduct a network meta-analysis with only two studies (e.g., comparing A vs Placebo and B vs Placebo). However, there is no possibility to check whether the treatment comparisons are consistent as you only have indirect evidence for the comparison A vs B.

Best wishes, Guido

prabpharm commented 4 years ago

Thank you so much for answering! Really appreciate you taking time and helping.