交互作用效应(p for Interaction)在SCI文章中可以算是一个必杀技,几乎在高分的SCI中必出现,因为把人群分为亚组后再进行统计可以增强文章结果的可靠性,不仅如此,交互作用还可以使用来进行数据挖掘。在既往文章中,我们已经介绍了怎么使用R语言可视化visreg包对交互作用进行可视化分析(见下图),


在既往文章中,我们已经使用R语言和SPSS分别绘制了logistic回归交互效应的可视化分析,后台有粉丝希望做一期stata交互效应的可视化分析,现在我们来使用stata演示一下logistic回归交互项(交互作用)的可视化分析,继续使用我们的不孕症数据(公众号回复:不孕症,可以获得数据),这样有助于对结果进行比较。
我们先导入数据数据看一下

数据有8个指标,最后两个是PSM匹配结果,我们不用理他,其余六个为:
Education:教育程度,age:年龄,parity产次,induced:人流次数,case:是否不孕,这是结局指标,spontaneous:自然流产次数。
先把Education这个指标转成数字

g edu=2
replace edu=0 if education=="0-5yrs"
replace edu=1 if education=="6-11yrs"


我们进行的logistic回归可视化,肯定要先建立logistic回归模型,假设我们想知道age和spontaneous有无交互,模型可以界面操作也可以代码,我就直接代码了,这里要说明一下,在stata中#号代表交互的意思(和R不一样,R是*号),age前面加个c.代表这是连续变量,spontaneous前面加个i.代表这是分类变量

logistic case age i.edu parity i.induced i.spontaneous c.age#i.spontaneous


算出来的结果后,我们生成它的概率

predict fit


生成概率后就可以做图了,主要是用到twoway这个函数做图,下面我们来由简单到复杂,慢慢深入应用这个函数作图,以便加深这个函数的了解。
我们先来做一个简单的点图,这个函数的主体是twoway,加上scatter表示绘制点图,如果加上line表示绘制线图,connected表示散点和线的连接图。下面代码中fit 和age是我们的变量,if spontaneous0 表示条件判断,意思是绘制spontaneous0 的fit 和age关系散点

twoway scatter fit age if spontaneous==0, sort


twoway scatter fit age if spontaneous0, sort和twoway (scatter fit age if spontaneous0, sort)的代码是一样的,等于用括号括起来。

twoway (scatter fit age if spontaneous==0, sort)


下面我们把上面代码中的scatter换成connected,这样就是点线连接图

twoway (connected fit age if spontaneous==0, sort)


我们已经做了spontaneous0的连接图,同理稍稍修改就可以做spontaneous1和spontaneous==2的连接图,3个线条同时作图

twoway (connected fit age if spontaneous==0, sort) (connected fit age if spontaneous==1, sort lp(-)) (connected fit age if spontaneous==2, sort lp(-))


这个图是散点连接图,好像有点丑,我们对它进行改动一下,在每个线图的后面加上一句(qfit fit age if spontaneous==n),就可以根据散点拟合线条

twoway (scatter fit age if spontaneous==0, sort) (qfit fit age if spontaneous==0 )(scatter fit age if spontaneous==1, sort lp(-))(qfit fit age if spontaneous==1 ) (scatter fit age if spontaneous==2, sort lp(-)) (qfit fit age if spontaneous==2 )


哎,这样好像好看一点了,好歹有个趋势,如果不想要散点

twoway (qfit fit age if spontaneous==0 )(qfit fit age if spontaneous==1 ) (qfit fit age if spontaneous==2 )


如果不想要曲线可以改成直线

twoway (lfit fit age if spontaneous==0 )(lfit fit age if spontaneous==1 ) (lfit fit age if spontaneous==2 )


最后加上图例

twoway (lfit fit age if spontaneous==0 )(lfit fit age if spontaneous==1 ) (lfit fit age if spontaneous==2 ),legend(lab(1 "spontaneous==0 ") lab(2 "spontaneous==1 ") lab(3 "spontaneous==3 "))


还可以修改图例位置

twoway (lfit fit age if spontaneous==0 )(lfit fit age if spontaneous==1 ) (lfit fit age if spontaneous==2 ),legend(lab(1 "spontaneous==0 ") lab(2 "spontaneous==1 ") lab(3 "spontaneous==3 ") ring(0) pos(1))


这样基本就做好了,还可以加上标题和修改X轴和Y轴名字等等,我就不一一演示了。Twoway这个函数还有很多强大的功能,我们将在以后的文章中一一演示。另外COX回归的交互可视化做法也差不多,有兴趣的可以自己试试。

stata行logistic回归交互项(交互作用)的可视化分析(1)相关推荐

  1. R语言logistic回归交互项(交互作用)的可视化分析3

    既往我们对logistic回归交互项(交互作用)进行了可视化分析,很多人对交互作用影响还不是很明白,都在后台发私信询问.其实交互作用就是一个变量通过对另一个变量的影响,导致结局变量改变,最常见的就是我 ...

  2. R语言logistic回归交互项(交互作用)的可视化分析2

    交互作用效应(p for Interaction)在SCI文章中可以算是一个必杀技,几乎在高分的SCI中必出现,因为把人群分为亚组后再进行统计可以增强文章结果的可靠性,不仅如此,交互作用还可以使用来进 ...

  3. R语言logistic回归交互项(交互作用)的可视化分析

    交互作用我们在前面已经说过,就不具体说了.在SCI论文中可以起到画龙点睛,并能进一步挖掘数据之间的亚组关系,进行数据挖掘也非常实用,交互项的可视化能把交互数据之间的关系明白的展示出来,在实际论文中绝对 ...

  4. stata进行logistic回归内部验证和外部验证

    我们既往已经介绍了使用Stata进行logistic回归绘制列线图并做内部验证,不少粉丝发信息问我怎么进行外部验证.今天我们来介绍一下,继续使用我们的不孕症数据(公众号回复:不孕症可以获得该数据).我 ...

  5. logistic回归报错问题:Warning messages: 1: glm.fit:算法没有聚合 2: glm.fit:拟合機率算出来是数值零或一

    logistic回归的时候报错问题包括下面两种 Warning: glm.fit: algorithm did not converge Warning: glm.fit: fitted probab ...

  6. 06.Logistic回归与最大熵模型(学习笔记)

    06.Logistic回归与最大熵模型 参考: 袁春老师<大数据机器学习公开课>:https://www.xuetangx.com/course/THU08091001026/103331 ...

  7. 有序分类logistic回归-R语言

    有序分类logistic回归 正如字面理解,包含两个方面:一是有序性,如调研中常用的满意度常用李克特量表,即有序的因变量:二是logistic分类,如1代表优秀.2代表良好.3代表一般等等. 因变量为 ...

  8. 手动以及使用torch.nn实现logistic回归和softmax回归

    其他文章 手动以及使用torch.nn实现logistic回归和softmax回(当前文章) 手动以及使用torch.nn实现前馈神经网络实验 文章目录 任务 一.Pytorch基本操作考察 1.1 ...

  9. 多项logistic回归系数解释_深入解读Logistic回归结果(一):回归系数,OR

    深入解读Logistic回归结果(一):回归系数,OR 关键词:Logistic回归分析.lasso回归系数解读.回归系数解读 Logistic回归虽然名字叫"回归" ,但却是一种 ...

  10. Stata:如何输入交互项

    方法一:stata中使用命令 "gen c = a*b"产生新变量代表交互项c. 方法二:stata回归命令中输入命令:c.x1#c.x2.c.x1#c.x2前的系数代表交互性系数

最新文章

  1. 为什么java单精度要f_为什么快速反平方根如此奇怪和慢Java?
  2. IBM X3650 WIN2003安装详细方法
  3. 分酒问题matlab代码,matlab葡萄酒分类数据归一化问题
  4. 12.5K 颗星星的 C++ 教程,带你高速上手现代 C++ !
  5. SAP Cloud for Customer的产品主数据通过PI同步到CRM
  6. CASREL:A Novel Cascade Binary Tagging Framework for Relational Triple Extraction(关系抽取,ACL2020,重叠关系)
  7. ajax发送请求和数据返回,Ajax发送和接收请求
  8. jsp连接sqlServer数据库教程、jsp连接sqlServer数据库报ClassNotFoundException异常
  9. 标准模板库(STL)之算法篇 —— lower_bound/upper_bound
  10. Echarts地图配置
  11. flowable工作流所有业务概念
  12. esxi7.0虚拟机安装群辉DS3615-6.2.2版本
  13. 图片转Excel表格在线工具,分享几款不错的工具!
  14. PAT(甲级)2021年冬季考试 7-2 Rank a Linked List
  15. 解读国内外激光雷达技术差异
  16. 启明云端分享:出乎意料,原来旋钮屏还可以这么用
  17. 几何结构因子(Geometrical structure factor)和原子形状因子(atomic form factor)
  18. 【毕业设计】基于树莓派的指纹识别打卡系统 - 单片机 物联网
  19. 蓝墨云班课与中职计算机课,蓝墨云环境下中职《计算机应用基础》的对分课堂教学研究...
  20. AURIX™ Development Studio 安装使用

热门文章

  1. Laravel文档阅读笔记-Rendering JSON(对JS变量进行赋值)
  2. bcnf分解算法_BCNF的保持无损连接的分解
  3. MFC制作的入坑级别管理系统
  4. VTN线下体验店 汇聚全球高端品牌 打造非凡购物体验
  5. 操作系统的三个抽象概念
  6. WPS Word为PDF签名
  7. 台灯c语言,Jya无线台灯C 告诉你如何重新定义光的含义
  8. 自考启示,关于不紧急重要到紧急重要的改变
  9. 时间管理-重要与紧急
  10. 微信公众号迁移流程和公众号迁移公证书办理步骤