[R-meta] May I ask a question about how to extract specific values from summary(netmeta) output?
Am 27.09.19 um 17:26 schrieb Yan LUO:
[...] I am considering of constructing a "2-dimensional figure" to show the results of a network meta-analysis, which means using the x-axis to the indicate efficacy ORs for a group of drugs and y-axis to indicate safety ORs for the same group of drugs. I selected drug A as conference for both efficacy and safety networks. In order to draw the scatter plot, I need to extract information from 2 network meta-analyses. The output of summary(netmeta) function (if set ref=drug A) displays all the ORs compared to drug A (which I need), however this result is not included in the returned list. If it were in the returned list then it would be not hard to extract, but since it cannot be found there, how can I extract these ORs values from the output? Besides, I am wondering why the displayed results are different from the returned list?
Dear Yan, You do not directly find the odds ratios in an R object created with netmeta() as the log odds ratio is stored. Furthermore, instead of only containing comparisons with the reference treatment, all network estimates are stored in the list elements 'TE.fixed' and 'TE.random'. These matrices contain the network estimates comparing the treatment in the row with the treatment in the column. For a netmeta object net1, for example, you can extract the log odds ratio of treatment comparisons with the reference treatment using the following commands: net1$TE.fixed[, net1$reference.group] net1$TE.random[, net1$reference.group] Similar matrices are stored in a netmeta object containing the standard errors, lower and upper confidence limits as well as z- and p-values (see help page of netmeta). Concerning a scatter plot of an efficacy and safety outcome, I wrote some R code (see attached file) which does the job. This will probably be the basis for a new plotting function in R package *netmeta* to easily create such scatter plots.
By the way, I have another question about the netgraph function. It seems not to be a defaulted selection of drawing a netgraph with the size of nodes proportional to the randomized number of patients (sample size), but can I manage to do it by some ways?
The number of randomized patients per treatment is stored in list element 'n.trts' which can be used to determine the node size in a network graph. E.g., example(smokingcessation) netgraph(net1, plastic = FALSE, points = TRUE, adj = 0.5, ???????? cex.points = 15 * sqrt(n.trts / max(n.trts))) Best wishes, Guido P.S. Some additional remarks: - R function netleague() can be used to create a league table for an efficacy and safety outcome. E.g., netleague(net.efficacy, net.safety) - R functions netbind() and forest.netbind() can be used to combine / bind results of several networks and to generate a corresponding forest plot - R functions netposet() and plot.netposet() can be used to generate a scatter plot of P-scores for two outcomes (to partially order / rank treatments based on two outcomes)
Dr. Guido Schwarzer Institute of Medical Biometry and Statistics, Faculty of Medicine and Medical Center - University of Freiburg Postal address: Stefan-Meier-Str. 26, D-79104 Freiburg Phone: +49/761/203-6668 Mail: sc at imbi.uni-freiburg.de Homepage: http://www.imbi.uni-freiburg.de ORCID iD: https://orcid.org/0000-0001-6214-9087 R-book: https://www.springer.com/gp/book/9783319214153 -------------- next part -------------- An HTML attachment was scrubbed... URL: <https://stat.ethz.ch/pipermail/r-sig-meta-analysis/attachments/20190930/6855ef66/attachment.html> -------------- next part -------------- An embedded and charset-unspecified text was scrubbed... Name: plot01.R URL: <https://stat.ethz.ch/pipermail/r-sig-meta-analysis/attachments/20190930/6855ef66/attachment.ksh>