计算最佳倾向得分的程序

propscore的Python项目详细描述


倾向分数计算器

{下面是Python倾向性的^评分。计算了几种副产品,包括:

安装

使用pip安装:

pip install propscore

说明

这段代码是一个正在进行中的工作,但是它允许人们按照Imbens and Rubin (2015a)中列出的一般方法来估计倾向分数(进入治疗组的概率)。在

目前支持一阶和二阶条款。该方法分三步进行估计。第一个由用户完成,其余由代码完成。在

步骤1

选择你认为相关的协变量,并且应该始终包含在倾向分数方程中。它们将位于代码的init_vars中。在

步骤2

添加将要测试的附加线性项。在倾向得分计算中,将根据这些结果逐一选出对数概率最大的总体增益。在每个步骤中,我们取最大值,使增益大于预定值(默认值为1)。一旦没有剩余变量给出至少一个增益,线性部分终止。在

步骤3

二次项和交互项是由init_vars和{}自动生成的,它们的比较方式与线性项相同,只是对数概率必须单独增加一个量(默认值为2.71)。在

示例使用

下面是示例代码来说明使用(注意:这个示例不会运行,因为我没有费心寻找合适的数据集进行测试,这仍然是一个正在进行的工作。在

^{pr2}$

输出

  • self.data:数据帧。这包括一个新的框架,仅仅是结果和潜在的协变量。在

  • {cd6}列表。由于奇点原因而没有被削减的变量。在

  • self.logodds:系列。这是对数优势比或线性化倾向得分。相当于self.model.fittedvalues。由于丢失了丢失的值,这可能与数据的维度不匹配,但索引将在不丢失的值上正确对齐。在

  • self.model:来自Statsmodels的拟合模型。这是Statsmodels中最后一组变量的原始模型

  • self.propscore:系列。这是由self.model.predict()计算的倾向得分。由于丢失了丢失的值,这可能与数据的维度不匹配,但索引将在不丢失的值上正确对齐。在

  • self.test_vars_ord2:列表。供参考的已测试二阶变量的完整列表。在

  • {14>系列}。根据倾向得分计算出的阶层(指数从0开始),也遵循同一章。结果变量的缺失值和倾向性得分超出允许值(大于对照组的最大值,小于治疗组的最小值)的编码为NaN。在

  • self.trim_range:元组。最佳配平最小值和最大倾向值的计算结果。在

  • self.in_trim:系列(真/假)。如果数组中为True,则表示倾向分数落在trim min/max范围内。在

参考文献

Imbens,G.和Rubin,D.(2015a)。估计倾向得分。统计学、社会学和生物医学科学的因果推论:导论(第281-308页)。剑桥:剑桥大学出版社。doi:10.1017/CBO9781139025751.014在

Imbens,G.和Rubin,D.(2015b)。修正以改善协变量分布的平衡。统计学、社会学和生物医学科学的因果推论:导论(359-374页)。剑桥:剑桥大学出版社。doi:10.1017/CBO9781139025751.017在

欢迎加入QQ群-->: 979659372 Python中文网_新手群

推荐PyPI第三方库


热门话题
java如何将cassandra中的行数据转换为与列相关的嵌套json   java如何使用jcr XPath在jcr:content/@jcr:data中搜索?   java在使用openCV进行安卓开发时如何利用手机的广角镜头   java解析扩展了接口,结束了一个潜在的无限循环   位置服务的@Override方法中存在java Android应用程序错误   java本地线程的用途和需求是什么   具有左右子访问的java节点树遍历   java验证JsonWebToken签名   JUL日志处理程序中的java日志记录   嵌入式Java读取给定时间段的串行数据。   java有没有办法从多个URL获取多个图像?   java线程通过等待intent阻止自己发送intent   java Spring MVC解析多部分内容请求   java JPA/Hibernate静态元模型属性未填充NullPointerException   java格式错误的字符(需要引号,得到I)~正在处理   java为什么PrintWriter对象抛出FileNotFoundException?   java Neo4j未正确保存标签   java IE不加载图像