scitb包1.6版本发布,一个为制作专业统计表格而生的R包

目前,本人写的scitb包1.6版本已经正式在R语言官方CRAN上线,scitb包是一个为生成专业化统计表格而生的R包。

可以使用以下代码安装

r 复制代码
install.packages("scitb")

安装过旧版本的从新安装一次就可以升级了,根据粉丝的建议,增加了Overall参数对数据进行汇总的功能,增加了连续卡方校正和fisher精确卡方的功能。

下面我来演示一下,scitb包生成结果需要stringi包和nortest包支持,这两个包你可以不导入,但要先安装好。

r 复制代码
install.packages(stringi)
install.packages(nortest)

安装好需要的包后我们就可以开始了,先导入R包和数据,scitb包自带有我既往的早产数据,咱们直接从包调用

r 复制代码
library(scitb)
bc<-prematurity

这是一个关于早产低体重儿的数据,低于2500g被认为是低体重儿。数据解释如下:low 是否是小于2500g早产低体重儿,age 母亲的年龄,lwt 末次月经体重,race 种族,smoke 孕期抽烟,ptl 早产史(计数),ht 有高血压病史,ui 子宫过敏,ftv 早孕时看医生的次数,bwt 新生儿体重数值

Sci包中绘制基线表的主要是scitb1函数(以后会有更多其他表格函数),本次我主要是介绍新功能,基础功能请看既往文章,咱们来看下它的函数体

r 复制代码
scitb1(vars,fvars=NULL,strata,data,dec,num,nonnormal=NULL,type=NULL,
statistic=F,atotest=T,NormalTest=NULL,fisher=FALSE,correct=FALSE,Overall=FALSE)

咱们先来看一下,vars是变量的意思,你基线表中的变量放进去,fvars是分类变量,就是你vars变量中的分类变量,如果没有的话就留空。strata,就是分层的意思,这里填入你要研究的变量,data这里填入你的数据,dec就是你生成结果的小数点位数,默认是3位。

先来个分类变量的,

假设咱们想race为研究目标,因为它是分类变量,咱们最好把它转成因子,因为scitb包有一定对数据类型的判定能力,如果你的分类变量类别大于5个,而你不转成因子的话,它可能自动判定为连续变量,处理方式不一样的,所以这里最好自己设定一下

r 复制代码
bc$race<-as.factor(bc$race)

接下来就是定义全部变量,分类变量和分层变量,这和tableone包一模一样,如果你会使用tableone包,使用scitb包起来完全无压力。

r 复制代码
allVars <-c("age", "lwt",  "smoke", "ptl", "ht", "ui", "ftv", "bwt")
fvars<-c("smoke","ht","ui")
strata<-"race"

一键生成统计结果

r 复制代码
out<-scitb1(vars=allVars,fvars=fvars,strata=strata,data=bc)

假如咱们论文需要汇总的结果,加上Overall=T

r 复制代码
out<-scitb1(vars=allVars,fvars=fvars,strata=strata,data=bc,statistic=T,Overall=T)

如果你的数据比较特殊,如果理论数T<5但T≥1,并且n≥40,需要用连续性校正的卡方进行检验.可以加上correct=T

r 复制代码
out<-scitb1(vars=allVars,fvars=fvars,strata=strata,data=bc,statistic=T,Overall=T,fisher=F,correct=T)

如果你理论数T<1或n<40,需要用到Fisher's检验.

r 复制代码
out<-scitb1(vars=allVars,fvars=fvars,strata=strata,data=bc,statistic=T,Overall=T,fisher=F,correct=T)

大家注意一下,fisher精确卡方和连续校正卡方同时选的话,只会出fisher精确卡方的结果,第二就是fisher精确卡方是没有统计值的,咱们看SPSS的结果也是没有的

所以怎么制表需要你自己想好来。连续变量也是差不多的,我简单跑一下把

r 复制代码
allVars <-c("race", "lwt",  "smoke", "ptl", "ht", "ui", "ftv", "bwt")
fvars<-c("smoke","ht","ui","race")
strata<-"age"
out<-scitb1(vars=allVars,fvars=fvars,strata=strata,data=bc)

红色字体并不是说明有错误,而是温馨提示你目前函数是把这个变量当做连续变量来处理,并告诉你分段的截点

添加汇总数据

r 复制代码
out<-scitb1(vars=allVars,fvars=fvars,strata=strata,data=bc,num=4,Overall=T)

其他的操作都差不多,我就不一一介绍了,想要详细了解的请看既往文章。

相关推荐
知识分享小能手4 小时前
R语言入门学习教程,从入门到精通,R语言数值关系数据可视化 - 完整知识点(5)
学习·信息可视化·r语言
生信碱移12 小时前
PACells:这个方法可以鉴定疾病/预后相关的重要细胞亚群,作者提供的代码流程可以学习起来了,甚至兼容转录组与 ATAC 两种数据类型!
人工智能·学习·算法·机器学习·数据挖掘·数据分析·r语言
知识分享小能手19 小时前
R语言入门学习教程,从入门到精通,R语言类别比较数据可视化- 完整知识点与案例代码(4)
学习·信息可视化·r语言
星座5281 天前
掌握双碳核心工具,从产品碳足迹到气候变化响应:基于OpenLCA、GREET、R语言的生命周期评价方法、模型构建及典型案例应用
r语言·生命周期·openlca·greet
知识分享小能手2 天前
R语言入门学习教程,从入门到精通,R语言网格绘图系统(ggplot2)- 完整知识点与案例代码(3)
开发语言·学习·r语言
做cv的小昊2 天前
【TJU】研究生应用统计学课程笔记(5)——第二章 参数估计(2.3 C-R不等式)
c语言·笔记·线性代数·机器学习·数学建模·r语言·概率论
hhb_6183 天前
R语言数据分析与可视化实战指南
开发语言·数据分析·r语言
知识分享小能手3 天前
R语言入门学习教程,从入门到精通,R语言传统绘图系统 - 完整知识点与案例代码(2)
开发语言·学习·r语言
笑不语4 天前
从共病网络到可解释 AI:同济医院 10 分 SCI 全流程复现(R 语言)
开发语言·人工智能·r语言
知识分享小能手4 天前
R语言入门学习教程,从入门到精通,R语言基础 - 完整知识点与案例代码(1)
开发语言·学习·r语言