使用R进行倾向得分匹配「建议收藏」

pacman::p_load(knitr,wakefield,MatchIt,tableone,captioner)set.seed(1234)library(wakefield)df.patients<-r_data_frame(n=250,age(x=30:78,…

大家好,又见面了,我是你们的朋友全栈君。

pacman::p_load(knitr, wakefield, MatchIt, tableone, captioner)
set.seed(1234)
library(wakefield)
df.patients <- r_data_frame(n = 250,
age(x = 30:78,
name = ‘Age’),
sex(x = c(“Male”, “Female”),
prob = c(0.70, 0.30),
name = “Sex”))
df.patients$Sample <- as.factor(‘Patients’)
summary(df.patients)
set.seed(1234)
df.population <- r_data_frame(n = 1000,
age(x = 18:80,
name = ‘Age’),
sex(x = c(“Male”, “Female”),
prob = c(0.50, 0.50),
name = “Sex”))
df.population$Sample <- as.factor(‘Population’)
summary(df.population)

mydata <- rbind(df.patients, df.population)
mydata$Group <- as.logical(mydata$Sample == ‘Patients’)
mydata$Distress <- ifelse(mydata$Sex == ‘Male’, age(nrow(mydata), x = 0:42, name = ‘Distress’),
age(nrow(mydata), x = 15:42, name = ‘Distress’))
pacman::p_load(tableone)
table1 <- CreateTableOne(vars = c(‘Age’, ‘Sex’, ‘Distress’),
data = mydata,
factorVars = ‘Sex’,
strata = ‘Sample’)
table1 <- print(table1,
printToggle = FALSE,
noSpaces = TRUE)
library(knitr)
kable(table1[,1:3],
align = ‘c’,
caption = ‘Table 1: Comparison of unmatched samples’)
set.seed(1234)
match.it <- matchit(Group ~ Age + Sex, data = mydata, method=”nearest”, ratio=1)
a <- summary(match.it)
kable(a$nn, digits = 2, align = ‘c’,
caption = ‘Table 2: Sample sizes’)
kable(a$sum.matched[c(1,2,4)], digits = 2, align = ‘c’,
caption = ‘Table 3: Summary of balance for matched data’)
plot(match.it, type = ‘jitter’, interactive = FALSE)

df.match <- match.data(match.it)[1:ncol(mydata)]

rm(df.patients, df.population)

pacman::p_load(tableone)
table4 <- CreateTableOne(vars = c(‘Age’, ‘Sex’, ‘Distress’),
data = df.match,
factorVars = ‘Sex’,
strata = ‘Sample’)
table4 <- print(table4,
printToggle = FALSE,
noSpaces = TRUE)
kable(table4[,1:3],
align = ‘c’,
caption = ‘Table 4: Comparison of matched samples’)

转载于:https://www.cnblogs.com/qiniqnyang/p/5810740.html

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请联系我们举报,一经查实,本站将立刻删除。

发布者:全栈程序员-站长,转载请注明出处:https://javaforall.net/128694.html原文链接:https://javaforall.net

(0)
全栈程序员-站长的头像全栈程序员-站长


相关推荐

  • 示波器表笔旁边的夹子是什么_示波器的基础操作,初学者必看教程「建议收藏」

    示波器表笔旁边的夹子是什么_示波器的基础操作,初学者必看教程「建议收藏」正确接地在设置测量或处理电路时,正确地接地是一个重要步骤。示波器正确接地可以防止用户受到电击,用户正确接地可以防止电路受到损坏。示波器接地意味着把示波器连接到电器中性的参考点上,如接地。把示波器三头电源线查到连接接地装置的插座上,实现示波器接地。示波器接地对人身安全是必需的。如果高压接触没有接地的示波器机箱,不管是机箱的哪个部分,包括视乎已经绝缘的旋钮,都会发送电击。而在示波器正确接地时,电流会通…

    2022年8月31日
    5
  • 直插电阻类型_假插芯和真插芯的区别

    直插电阻类型_假插芯和真插芯的区别插件电阻也称为电阻器(Resistor)在日常生活中一般直接称为电阻。是一个限流元件,将电阻接在电路中后,电阻器的阻值是固定的一般是两个引脚,它可限制通过它所连支路的电流大小。插件电阻具体讲解大全:  固定电阻、可调电阻、特种电阻(敏感电阻)  不能调节的,我们称之为定值电阻或固定电阻,而可以调节的,我们称之为可调电阻.常见的可调电阻是滑动变阻器,例如收音机音量调节的装置是个圆形的滑动…

    2022年8月21日
    6
  • JAVA删除数组中的某个元素_数组删除指定位置元素

    JAVA删除数组中的某个元素_数组删除指定位置元素JAVA之删除数组中某个元素值

    2025年7月3日
    1
  • 32H7_海马s5近光可以直接换H7吗

    32H7_海马s5近光可以直接换H7吗完整版教程下载地址:http://www.armbbs.cn/forum.php?mod=viewthread&tid=94547第16章DSP功能函数-数据拷贝,数据填充和浮点转定点本期教程主要讲解功能函数中的数据拷贝,数据填充和浮点数转换为定点数。目录第16章DSP功能函数-数据拷贝,数据填充和浮点转定点16.1初学者重要提示16….

    2022年9月7日
    2
  • 宽度学习(Broad Learning System)

    宽度学习(Broad Learning System)宽度学习系统(BLS)一词的提出源于澳门大学科技学院院长陈俊龙于2018年1月发表的《BroadLearningSystem:AnEffectiveandEfficientIncrementalLearningSystemWithouttheNeedforDeepArchitecture》

    2022年5月22日
    35
  • 国产操作系统(Linux)技术流派[通俗易懂]

    国产操作系统(Linux)技术流派[通俗易懂]图1Linux发行版如上图所示目前主流的Linux发行版大体可以分为两类:一类是简称为RPM系,另一类是简称为DEB系。基中RPM系是以Redhat为代表,其主导发行的包括:服务器商业版:RedhatEnterpriseLinux服务器社区版:Centos社区版:FedoraCentos以它是来自于RedhatEnterpriseLinux依照开放源代码规定释出的源代码所编译而成。Fedora则是RedhatEnterpriseLinux是…

    2022年5月16日
    49

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

关注全栈程序员社区公众号