龙空技术网

python数据分析:如何用python做路径分析,附数据库实例操练

Codewar 666

前言:

现在我们对“python路径操作”大致比较着重,朋友们都需要知道一些“python路径操作”的相关内容。那么小编同时在网摘上搜集了一些对于“python路径操作””的相关文章,希望朋友们能喜欢,各位老铁们一起来了解一下吧!

一篇文章写清楚一个问题,关注我,自学python!

最近在学习结构方程模型,因为是个新东西,自己做毕业论文也得用,所以最近更新很慢,大家见谅,最近会给大家写一些自己理解的结构方程模型的东西,和python做法,今天主要是写路径分析。

路径分析简介

路径分析其实是结构方程模型的一部分。

结构方程模型(SEM)由两个部分所组成, 第一部分是测量模型(measurement model),了解每个潜在变数下的结构是否符合理论预期?会以验证性因素分析(CFA)来分析;另一个部分则为结构模型(structural model),探讨研究者提出的特定行为科学理论,其变数间复杂的因果路径关系,因此也称为路径分析(Path analysis,以下简称PA)。

1921年美国遗传学者Sewell Wright首先提出了路径分析(PA)的概念,用来处理演化与突变的机制关系。之后路径分析在许多社会科学领域获得非常广泛的使用,不管是经济学,心理学,甚至教育与政治学。

其实,路径分析可以说是结构方程模型(SEM)的一种特殊的亚型,只要把PA看为每个变数都只用一个可观察指标(observable indicator)来测量的SEM即可。

换言之,PA不是只有一个回归方程,而是用一组回归方程来同时估计效果的模型,对于行为科学复杂的理论建构,以及理论上因果关系争议(例如到底是动机影响了成绩,还是成绩影响了动机,抑或是两者互为因果?)的厘清很有帮助。

路径分析(PA)常常用于处理中介效果(mediated effect)的分析。中介模型(mediated model)常常在行为科学领域用来验证因果机制(causal mechanism)。

中介模型

以上图为例,研究者初期已经建立了自变量与因变量之间的关系,但是想进一步理解,自变数到底是透过什么机制来影响因变量。

给大家举个例子,一家企业的HR 部门发现举办某个training program 后,参与员工的工作绩效显著提升了。对于HR 主管而言,他(她)或许有兴趣于到底是什么样的因果机制导致了这样的效果?因此其作了一些假设,并在下一次施行时,测量那些变数,结果发现是因为training program 提升了员工的自我效能感,进而使其愿意挑战自己,而让工作绩效随之爬升。在这里,自我效能感就是中介变数,从这次的分析中,可以让该组织了解到,之后不管有没有该training program,透过各种途径与方法提升员工的自我效能感才是真正核心的关键,因为这能让员工工作绩效更上一层楼,进而让整体组织都能获益。

在上图中,自变量本身对于因变量的独特效果,称为直接效果(direct effect);而自变数透过中介变数(mediator)影响因变量的部分,则称为间接效果(indirect effect),两种效果加总,就是所谓的总效果(total effect)。

在方法论上,模型考量了中介变数后,若直接效果变得不显著,表示该中介变数有完全中介(complete mediation)的效果,但只是让直接效果的估计值变小,但仍然具有统计显著性,称为部分中介(partial mediation)效果,以training program为例,表示很可能除了自我效能感外,还有其他心理因素也中介了该program对于工作绩效的关系,进一步探究以便厘清。

python路径分析实操

用python做结构方程模型需要用到的库为semopy,semopy是一个伞形python包,它包含许多结构方程建模(sem)技术。

第一步设定模型代码如下

from semopy import Modelmod = """ #c ~ a + bq4 ~ q12 + q2#d ~ c + aq1 ~ q4 + q12      """model = Model(mod)

代码解释:以上代码首先导入Model,然后设定模型,我们设定了如下图所示的模型(代码中有注释)

第二步导入数据(数据请关注私信获取,自动回复的)

from pandas import read_csvdata = read_csv("dataset/1 evals.csv")data.head()model.load_dataset(data)

代码解释:这个就不用解释啦嘿嘿,最后一行的代码是将数据导入模型。

第三步估计模型参数

from semopy import Optimizeropt = Optimizer(model)from semopy.inspector import inspectinspect(opt)

代码解释:上面的第一部分是估计参数,然后查看参数,输出如下:

可以看到结果有所有方程的回归系数和P值等,还有q1,q4的方差。

小结

今天给大家介绍了结构方程模型的概念和路径分析的python实现方法,算是给大家做了一个中介模型,感谢大家耐心看完。发表这些东西的主要目的就是督促自己,希望大家关注评论指出不足,一起进步。内容我都会写的很细,用到的数据集也会在原文中给出链接,你只要按照文章中的代码自己也可以做出一样的结果,一个目的就是零基础也能懂,因为自己就是什么基础没有从零学Python的,加油。

(站外链接发不了,请关注后私信回复“数据链接”获取本头条号所有使用数据)

标签: #python路径操作 #python 找不到路径 #python的路径问题 #python路径怎么写 #python工作路径