首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
社区首页 >问答首页 >Matchit R-如何运行1个对照:2个处理单元的比率?

Matchit R-如何运行1个对照:2个处理单元的比率?
EN

Stack Overflow用户
提问于 2021-06-05 19:28:12
回答 2查看 65关注 0票数 0

Matchit R-如何运行1个对照:2个处理单元的比率?( 40个处理对象的20个对照) ratio =对于允许它的方法,在k:1匹配中,每个处理单元应该匹配多少个控制单元。0.5是不可能的,我怎么才能应用它?

EN

回答 2

Stack Overflow用户

发布于 2021-06-05 20:21:42

我认为这是不可能的,因为它没有意义。你的问题暗示了被处理的单元可以配对,但前提是之前的步骤中被处理的单元彼此匹配,这不是MatchIt设计的一部分(从实验设计的角度来看,也没有真正的意义)。

或者,或者你有两对完全匹配的处理案例,在这种情况下,试图同时使用它们并不能真正获得任何分析优势。如果是这样的话,我会将配对减少到单个观察值,并进行1:1匹配。

票数 0
EN

Stack Overflow用户

发布于 2021-06-09 01:44:27

这实际上是一个比看起来难得多的问题。使用最近邻匹配肯定无法做到这一点。理论上,使用最优匹配应该是可能的,例如,直接使用method = "full"optmatch包。不幸的是,在我的实验中,我无法让optmatch执行您想要的操作。理想情况下,您应该能够运行

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
fullmatch(., min.controls = 1/2, max.controls = 1/2, mean.controls = 1/2)

但这实际上并没有产生预期的结果。也许你可以联系opmatch的作者解决这个问题,因为这是一个有趣的问题,他们的包应该能够解决这个问题。

您还可以使用另一种称为基数匹配的方法,该方法将在下一版本的MatchIt中实现,但可以在使用devtools::install_github("ngreifer/MatchIt")的开发版本中进行访问。基数匹配使用优化来选择满足用户设置的样本大小约束和平衡约束的单元子集。在这种情况下,采样大小约束是处理单元的数量是控制单元数量的两倍。您需要设置平衡约束,这是处理组和对照组之间允许的最大不平衡(以标准化的平均差异单位表示)。如果A是您的处理变量,而X1X2是您尝试匹配的变量,则可以运行以下代码:

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
m <- matchit(A ~ X1 + X2, dataa = data, method = "cardinality", 
             estimand = "ATC", ratio = 2, tols = .01)

如果一个解决方案是可能的,它将被产生。如果不是,您将不得不放宽容差(即,增加tols),直到它是。你可以去跑步

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
summary(m, un = FALSE)

这将产生余额和剩余样本大小的汇总。如果不是所有的处理单元都匹配,则继续增加tols,直到它们匹配为止。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/67853246

复制
相关文章
控制器操作
一.控制器操作 我们首先复习一下基本的控制器定义和方法执行方式。 第一步:控制器默认创建在当前模块下的 Controller 目录下; 第二步:按照指定的命名规则:控制器名(首字母大写)+Controller.class.php; 第三步:控制器里的方法必须是 public 公共的; //控制器 class UserController extends Controller { public function index() { //index()方法在URL访问时可以忽略 } } URL 访问:http://localhost/demo39/User/index/
PM吃瓜
2019/08/13
6470
控制器操作【2】
三.跳转和重定向 ThinkPHP 在操作数据库时,需要跳转和重定向页面。ThinkPHP 提供了一组方法来解决了这个问题。 //成功和失败的跳转 class UserController extends Controller { public function index() { $flag = true; if ($flag) { //会跳转到:http://localhost/demo39/User/all $this->success('新增成功!', '../User/all'); } else { //会跳转到本页的上一页 $this->error('新增失败!'); } } } PS:success()方法和 error()方法,第一个参数是提示信息、第二个跳转的地址、第三个跳转时间。默认情况下 success()方法是 1 秒,error()方法是 3 秒。
PM吃瓜
2019/08/13
5720
控制器操作【3】
五.请求类型 ThinkPHP 提供了一组常量来判断当前请求是否是 GET、POST 等。通过判断请求处理不同的业务逻辑。 常量 含义 IS_GET 判断是否 GET 提交请求 IS_POST 判断是否 POST 提交请求 IS_PUT 判断是否 PUT 提交请求 IS_DELTE 判断是否 DELETE 提交请求 IS_AJAX 判断是否 AJAX 提交请求 //判断是否GET请求 if (IS_GET) { echo '是GET请求'; } else { echo '不是GET请求'; }
PM吃瓜
2019/08/13
5680
SDRAM控制器操作时序
IDLE 状态到WRITE 状态: ​ 1) 在IDLE 状态需要先给ACT 命令激活某一行,此时处于Row Active 状态; ​ 2) 在Row Active 状态之后,给Write 命令则会进入WRITE 状态; ​ 3) 在WRITE 状态后,再给一次Write 命令,就可以继续写入数据。 WRITE 状态到IDLE 状态: ​ 1) 在WRITE 状态给PRE 命令,则SDRAM 将跳出WRITE 状态进入Precharge状态; ​ 2) 在Precharge 状态后,就会自动进入IDLE 状态了。
全栈程序员站长
2022/09/16
7090
SDRAM控制器操作时序
分区操作后索引的状态
导读:DDL操作是否会导致索引失效的原则上是看是否引起数据发生变化,如果分区的数据发生了改变,则索引需要失效才能保证结果的准确性,如果数据没有发生变化,则索引的状态不会变为UNUSABLE。
数据和云
2020/02/27
8260
Structured Streaming的任意状态操作
很多使用案例需要比聚合更高级的状态操作。例如,在很多案例中,你必须跟踪来自于事件数据流的会话操作。为了处理这种会话机制,必须存储任意类型的数据作为状态,同时每次触发使用数据流事件对状态做任意的状态操作。从spark2.2开始,可以使用mapGroupsWithState和更强大操作flatMapGroupsWithState。两个操作都允许你对分组的datasets使用自定义代码去更新自定义状态。
Spark学习技巧
2019/07/22
1.3K0
git版本控制器的相关操作
git status 查看仓库状态 git diff <filename> 查看为提交的修改 git log 查看提交的日志 git log --pretty=oneline 单行显示
java攻城狮
2020/10/10
5490
git版本控制器的相关操作
Spring中如何操作JDBC
本篇文章介绍一下在Spring中如何使用JDBC,事实上,在Spring中使用JDBC和传统的JDBC或者一些JDBC框架,如:DBUtils的使用没有什么区别,所以Spring中使用JDBC是非常简单的。
wangweijun
2020/02/14
3490
.Net中如何操作IIS
Net中实际上已经为我们在这方面做得很好了。FCL中提供了不少的类来帮助我们完成这项工作,让我们的开发工作变非常简单和快乐。编程控制IIS实际上很简单,和ASP一样,.Net中需要使用ADSI来操作IIS,但是此时我们不再需要GetObject这个东东了,因为.Net为我们提供了更加强大功能的新东东。 System.DirectoryServices命名空间中包括了些强大的东东--DirectoryEntry,DirectoryEntries,它们为我们提供了访问活动目录的强大功能,在这些类允许我们操作II
脑洞的蜂蜜
2018/02/02
1.9K0
JQuery中DOM操作示例代码
Jquery的DOM操作 1、插入节点代码示例: <p title=”选择你喜欢的水果”>你最喜欢的水果是?</p> <ul> <li title=”苹果”>苹果</li> <li title=”橘子”>橘子</li> <li title=”菠萝”>菠萝</li> </ul> <script language=”javascript”> var $li_1=$(“<li title=’香蕉’>香蕉</li>”); var $li_2=$(“<li title=’雪梨’>雪梨</li>”); $(“ul”).
苦咖啡
2018/05/07
1.3K0
VBA操作VBA——代码操作
有了前面VBA工程对象的基础,要操作代码就容易了,只要找到对象对应的属性、方法就可以。
xyj
2020/07/28
2.5K0
VBA操作VBA——代码操作
嵌入式中状态机的几种骚操作
状态机可以分为状态和事件 ,状态的跃迁都是受事件驱动的,因此可以通过一个二维表格来表示状态的跃迁。
混说Linux
2023/02/24
1K0
嵌入式中状态机的几种骚操作
【Ruby on Rails】Model中关于保存之前的原值和修改状态
今天在Rails的Model中遇到了一个问题—— 当我从Model类中获取了一个ActiveRecord对象,对其进行了一系列修改(尚未保存),我该如何确定究竟哪些修改了呢? (设Model为Option,相关的的参数为correct) 我本来采取的方法是——在数据表中新增一个ori_correct参数,每次对象保存之前都和correct做到同步,这样一来,是不是correct字段发生了修改也就得以判断了。 但是这样的缺点也显而易见——如果以后参数个数很多的话,岂不是得每一个都得来一个相应的ori_字段?这
HansBug
2018/04/11
1.7K0
Nightwatch中如何模拟键盘操作
在自动化测试中有这样一个场景,在一个输入框中输入一串字符,然后执行敲回车键,验证搜索结果,以Google搜索为例,代码如下:
Peter Shen
2020/06/12
1.3K0
Java中如何操作超大数
我们知道Integer的最大值是 2^31 - 1,Long最大值是 2^63 -1, 不管是32位机还是64位机都是这样, 通常来说我们要操作一个大于 Integer最大值的数的时候会用 Long来进行, 但万一我们遇到一个比 Long的最大值还大的数怎么办呢?
PhoenixZheng
2018/08/07
4290
Java中如何实现原子操作?
在Java中,J实现原子操作 可以通过锁和循环CAS的方式来实现原子操作。 1 使用循环CAS操作原子操作 package com.yy;
爱明依
2019/03/12
8590
【Groovy】集合遍历 ( 操作符重载 | 集合中的 “ + “ 操作符重载 | 集合中的 “ - “ 操作符重载 | 代码示例 )
对集合使用 " + " 运算符 , 其作用相当于 调用 plus 方法 , " + " 符号两侧的值就是 plus 方法的
韩曙亮
2023/03/30
1.2K0
【Groovy】集合遍历 ( 操作符重载 | 集合中的 “ + “ 操作符重载 | 集合中的 “ - “ 操作符重载 | 代码示例 )
点击加载更多

相似问题

Rails如何计算操作的响应代码

10

如何更改Swagger中成功操作的响应状态代码?

22

Rails控制器操作不响应更改

12

如何从rails控制器操作发出404响应?

71

单个Rails控制器操作中的多个JSON响应

13
添加站长 进交流群

领取专属 10元无门槛券

AI混元助手 在线答疑

扫码加入开发者社群
关注 腾讯云开发者公众号

洞察 腾讯核心技术

剖析业界实践案例

扫码关注腾讯云开发者公众号
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档
查看详情【社区公告】 技术创作特训营有奖征文