使用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)
全栈程序员-站长的头像全栈程序员-站长


相关推荐

  • 2021年河北高考成绩位次怎么查询,河北高考一分一段表2021,河北高考位次排名表…[通俗易懂]

    2021年河北高考成绩位次怎么查询,河北高考一分一段表2021,河北高考位次排名表…[通俗易懂]河北高考一分一段表它显示每一个分数在全省考生有多少名,能让你计算出自己的排位。目前的段表,是将全省所有考生的档案分(高考各科成绩+优惠加分)从高到低排列(分数相同的则为并列),再按每1分一段,统计“本段人数”;从本段向上一直到最高分段的所有“本段人数”相加,则为“累计人数”。一分一段表上显示出每一个分数全省的考生有多少名,这个数据的参考价值最大。2020年河北高考一分一段表会在成绩公布后一起公布,…

    2022年7月14日
    21
  • batchnorm原理理解「建议收藏」

    batchnorm原理理解「建议收藏」接触CNN也一段时间了,最近也到了秋招期间,面试的时候可能会问到的一些内容需要做一个整理CNN-BN层参考了一个大神的博客,感觉讲的很深入也很好理解。我这里主要是对他的博客做一个自己的归纳整理,主要是为了方便自己去理解,也欢迎大家一起讨论自己的理解。这里给出大神的博客地址:https://blog.csdn.net/qq_25737169/article/details/79048…

    2022年5月16日
    47
  • ❤️肝下25万字的《决战Linux到精通》笔记,你的Linux水平将从入门到入魔❤️【建议收藏】

    ❤️肝下25万字的《决战Linux到精通》笔记,你的Linux水平将从入门到入魔❤️【建议收藏】文章目录操作系统的发展史UnixMinixLinux操作系统的发展Minix没有火起来的原因Linux介绍Linux内核&发行版Linux内核版本Linux发行版本类Unix系统目录结构Linux目录用户目录命令行基本操作命令使用方法查看帮助文档helpman(manual)tab键自动补全history游览历史命令行中的ctrl组合键Linux命令权限管理列出目录的内容:ls显示inode的内容:stat文件访问权限修改文件权限:chmod修改文件所有者:chown修改文件所属组:chgrp文件.

    2022年6月1日
    29
  • C#多线程同步事件及等待句柄

    C#多线程同步事件及等待句柄最近捣鼓了一下多线程的同步问题,发现其实C#关于多线程同步事件处理还是很灵活,这里主要写一下,自己测试的一些代码,涉及到了AutoResetEvent和ManualResetEvent,当然还有也简要提了一下System.Threading.WaitHandle.WaitOne、System.Threading.WaitHandle.WaitAny和System.Threading.Wait

    2022年7月15日
    15
  • 怎么创建CSV文件和怎么打开CSV文件[通俗易懂]

    怎么创建CSV文件和怎么打开CSV文件[通俗易懂]CSV(CommaSeparatedValues逗号分隔值)。.csv是一种文件格式(如.txt、.doc等),也可理解.csv文件就是一种特殊格式的纯文本文件。即是一组字符序列,字符之间已英文字符的逗号或制表符(Tab)分隔。在windows系统环境上.csv文件打开方式有多种,如记事本、excel、Notepad++等,只要是文本编辑器都能正确打开。1.工具/原料E…

    2022年7月20日
    17
  • cgal使用_cgal库

    cgal使用_cgal库CGAL5.3-手动:在Windows上使用CGAL(使用VisualC++)

    2025年8月13日
    2

发表回复

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

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