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)

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

相关推荐
idolao1 天前
R语言4.4.3统计分析软件安装教程:详细步骤+自定义安装路径(64位)
开发语言·r语言
做cv的小昊1 天前
【TJU】应用统计学——第四周作业(2.3 C-R不等式、2.4区间估计)
c语言·人工智能·算法·机器学习·数学建模·r语言·概率论
爱技术的阿呆3 天前
R code debug 和 study
开发语言·r语言
Q一件事4 天前
R语言制图-相关性及关系网络图
开发语言·r语言
weixin_446934034 天前
多分类暴露变量的亚组分析森林图功能上线了,R语言搞不了风暴统计平台一键搞定
人工智能·机器学习·分类·数据挖掘·r语言
天桥下的卖艺者4 天前
R语言使用TrialEmulation包快速进行数据模拟RCT研究(真实世界研究)
开发语言·r语言·模拟rct
Omics Pro4 天前
基因集(模块)活性量化:R语言+Java原生
大数据·开发语言·前端·javascript·数据库·r语言·aigc
开开心心就好5 天前
伪装文件历史记录!修改时间的黑科技软件
java·前端·科技·r语言·edge·pdf·语音识别
xiaoliuliu123456 天前
R语言4.5.0安装教程:详细步骤+自定义安装路径(64位)
开发语言·r语言