
最近发现一个做人口统计学的R包——compareGroups,(一直很懒,一直在找)基本上实现一行代码。
library(compareGroups) # load compareGroups packagedata(predimed) # load example datahead(predimed) # read the first six rows
找了个predimed公开数据演示, 前6行的数据, 连续变量有符合正态分布和非正态的:

一行代码就可以
tab <- descrTable(group ~ . ,predimed,hide.no="no",method=c(wth=NA, p14=NA))
group ~ . : 表示的是将group作为分组变量,对data.frame里所有的变量都进行统计。
method 是指定变量的分布, 1指定为正态分布, 2指定为非正态, NA是自动根据Shapiro-Wilks检验来计算正态性。
hide.no用来隐藏某些yes/no分类变量中no的比率。

tab <- descrTable(group ~sex+age+bmi+smoke+htn, predimed,hide = c(sex = "male"),hide.no="no",method=c(Age=NA, bmi=NA),subset=age>60)
如果只选定部分变量分析可在group~添加, 对于AD的研究,性别部分一般只看female的比率, 在hide里可以隐藏male, subset可以根据某个变量范围, 例子中可以只选择age > 60的被试。

CRAN上作者一直保持在更新, 功能也很全面,例如:
show.p.overall = TRUE : 可以计算组间两两比较, 且可以展示多重比较校正后的p值。
method设定NA后,对于非正态连续,median[quantiles], 正态则均值标准差。
可以画分层后的基线特征表。
支持CSV/HTML/LaTeX/PDF/Markdown/Word/Excel输出,export2csv, export2word等等。
.................
使用也有几个局限:
部分期刊对于人口表有特别要求, 可能不一定满足,但是对于多组,多变量的人口表,还是可以节省时间,也不会出错。
descrTable目前好像还不报道estimate和estimate的%95CI, 可能需要摸索下。
这是descrTable所有参数, 有兴趣自行探索。
descrTable(formula,data, subset,na.action = NULL, y = NULL,Xext = NULL, selec = NA,method = 1, timemax = NA,alpha = 0.05, min.dis = 5,max.ylev = 5, max.xlev = 10,include.label = TRUE, Q1 = 0.25, Q3 = 0.75,simplify = TRUE, ref = 1, ref.no = NA,fact.ratio = 1, ref.y = 1, p.corrected = TRUE,compute.ratio = TRUE, include.miss = FALSE,oddsratio.method = "midp", chisq.test.perm = FALSE,byrow = FALSE, chisq.test.B = 2000,chisq.test.seed = NULL, Date.format = "d-mon-Y",var.equal = TRUE, conf.level = 0.95, surv = FALSE,riskratio = FALSE, riskratio.method = "wald",compute.prop = FALSE, lab.missing = "'Missing'",hide = NA, digits = NA, type = NA,show.p.overall = TRUE, show.all,show.p.trend, show.p.mul = FALSE,show.n, show.ratio = FALSE, show.descr = TRUE,show.ci = FALSE, hide.no = NA, digits.ratio = NA,show.p.ratio = show.ratio, digits.p = 3,sd.type = 1, q.type = c(1, 1),extra.labels = NA, all.last = FALSE)
包的参数manual:
https://cran.r-project.org/web/packages/compareGroups/compareGroups.pdf
使用manual:
https://cran.r-project.org/web/packages/compareGroups/vignettes/compareGroups_vignette.html
一个中文的较全面总结:
https://mp.weixin.qq.com/s/WDr9mwsv8--NPLEBjtRiZA
还有几个类似的可做demongraphic info的包: table1, demoGraphic, gtsummary等等
End


﹀
﹀
﹀
欢迎各位分享好用的工具、函数




