R数据分析:多项式回归和响应面分析的理解与实践

 2024-02-20 01:02:00  阅读 0

今天我想和大家分享一种新的统计方法,叫做响应面分析。 响应面分析用于探索变量一致性假设( )。 它本身就是一种工程方法,目前越来越多地应用于组织行为、管理、营销等领域。

说明(即)两个(或)一些。 这些在许多方面发挥着作用,(Kim & Hsieh, 2003)、(Caniëls & Veld, 2019)和(Caniëls, Vos, , & , 2018)。

响应面分析是最佳选择,尤其是在探索一致性和不一致的影响时。 也就是说,例如,如果您有两个自变量和一个因变量,您想查看两个自变量是否同时一致变化(当两者同时增加或减少时,因变量如何变化)以及何时不一致变化同时(一个增加,另一个减少)。 这个时候一定要记得使用响应面分析。

(RSA) 是二比一的关系。 这是在两个是研究的情况下。

一致性假设的检验需要多项式回归,而响应面分析的优点在于它可以将多项式回归的结果绘制成3D,让我们清楚地看到因变量在自变量的各种组合下的变化。 并通过多项式系数证明了相应的假设。

RSA 的 是三图上的 的 。 的,已经习惯了什么是“”。 这是一个图表,其中三个数据可以帮助

此外,响应面分析还可以测试相互作用,并且不受线性假设的限制。 今天我根据两篇有趣的文档,跟大家分享一下对响应面分析的理解和具体实践。

理论理解

试想一下,如果你不会响应面分析,而你想研究两个变量之间的不一致对结果的影响,你会怎么做? 例如,你想研究父母的期望x1和孩子的兴趣x2对孩子成就y的影响,想验证父母的期望和孩子的兴趣一致性越强,孩子未来的成就是否越高? 你怎么做呢?

计算一个新变量? 然后取x1-x2的绝对值并将其用作新的自变量。 难道这就是所谓的两者的区别吗? 使用这个新变量对y进行回归分析?

估计这是大多数同学首先想到的。

这里存在两个问题:1.信息丢失;2.信息丢失。 2、你无法知道同样的效果是x1大于x2造成的,还是x2大于x1造成的。

,这两项变成一个分数,其中 。 为此,各就各位。 没有告诉我们每个到哪个

所以这个想法并不好。 我们不能说它错,只能说它不好。

此时最正确的方法是使用多项式回归:

回归中的变量筛选方法_lasso回归筛选变量为0_回归分析筛选变量

上式中,xy为两个自变量,Z为因变量,式中还存在xy的二次项。 对于这样一个公式,我们可以用图形来表示

回归分析筛选变量_lasso回归筛选变量为0_回归中的变量筛选方法

图中,两个自变量位于 xy 轴,因变量或模型的响应值位于 z 轴。 这样,所有xy组合对应的模型响应值就成为一个面,称为响应面。

例如,对于底面上特定xy对应的圆,其对应的Z值是响应面上的星号。

看图片时,有两条线值得我们特别注意:图中的一致性线(LOC)和不一致线(LOIC)。

一致性线是由所有xy相等的点组成的线,是xy平面上的45°线。 这条线对应的响应面代表了一致性变化时z值的变化。 图中就是上图中红线对应的响应面。 可以看到,当xy一致时,Z值始终是最大的。

不一致线是由所有 xy 彼此相反的点组成的直线。 它是 xy 平面上与一致性线垂直的线。 上图中,就是xy平面上的蓝线。 可以看到xy的差异越大,Z的值越低。

通过这样的直观表达,我们可以很容易的知道xy的所有变化下Z的具体变化。

并且结合多项式模型的系数,我们还可以检验相应的假设。

我们返回到一致性线对应的响应面。 在该响应面上,x=y,Z的表达式变为二次函数:

Z = a1X + a2X2,其中 a1 = b1 + b2 且 a2 = b3 + b4 + b5

系数a2决定对应的响应面是直线还是曲线,a1决定对应的响应面的斜率。

让我们看看不一致线对应的响应面。 在这个响应面上,x=-y,Z的表达式也是一个二次函数:

Z = a3X + a4X2,其中 a3 = b1-b2 且 a4 = b3-b4 + b5

系数a4决定对应的响应面是直线还是曲线,a3决定对应的响应面的斜率。

根据系数的不同组合,图中的响应面有不同的形状:看下图,例如a1>0(一致性线对应的Z值是一条向上倾斜的直线) ,a4

lasso回归筛选变量为0_回归分析筛选变量_回归中的变量筛选方法

通过上面介绍的系数,我们可以验证相应的假设。 接下来,我们看两个实际例子。

文档标题如下:

Bai, Q., Lei, L., Hsueh, FH, Yu, X., Hu, H., Wang, X., & Wang, P. (2020)。 -in and ':A 与 . , 275, 127-135。

文章研究了低头族行为习惯对抑郁症发生的影响,同时考虑了父母和孩子的情况。 形成多项式回归模型后,选择变量进行响应面分析。 主要结果如下所示:

lasso回归筛选变量为0_回归中的变量筛选方法_回归分析筛选变量

作者把关注的两个自变量,一个是父母低头,一个是孩子低头,放在xy轴上; 因变量“儿童抑郁症”位于 z 轴上。 通过这样的图形表示可以看出,当x和y一致增加以及xy变化不一致时抑郁症的变化,从而回答了研究问题。

在结果的呈现中,作者报告了一致性线的系数和 p 值,从而回答了假设 4:

lasso回归筛选变量为0_回归中的变量筛选方法_回归分析筛选变量

即一致性线的斜率是显着的正值,这意味着父母和孩子都是低头者(一致低头者),孩子患抑郁症的风险就会增加。 同时,不一致线的系数也可以用同样的方式来理解。

笔者也通过这样的分析检验了调节作用。 该方法部分的原始描述如下图所示。 使用的方法称为:

lasso回归筛选变量为0_回归分析筛选变量_回归中的变量筛选方法

就是嵌套几个回归,然后比较模型的R方,从数据驱动的角度判断交互项是否应该存在。 其原理是,加入交互项后,R方明显变大,说明交互项的加入可以显着提高模型的解释力。

我们再看看管理领域的另一篇文章:

Lee, K.、Woo, HG 和 Joshi, K. (2017)。 专业版和新版:和 ., 35(2), 249-260。

文章在验证以下两个假设时使用了响应面分析:

NPD 将同时作为 和 。

NPD 将作为 和 中的。

仍然讨论两个自变量变化趋势的一致性和不一致,作者提供了图表来回答研究假设:

lasso回归筛选变量为0_回归中的变量筛选方法_回归分析筛选变量

回归中的变量筛选方法_lasso回归筛选变量为0_回归分析筛选变量

原文中的假设5意味着当两个自变量同时变大时,因变量也会增大。 为了验证这一假设,文章使原多项式回归中的两个自变量相等,并对方程进行了简化。 稍后我们看一下回归系数。 回归方程化简后,就变成了二次函数。 此时满足假设5的条件是二次项的系数必须为0(二次项必须不显着,否则函数是曲线,不满足假设5。假设因变量总是增长的,请回忆一下初中二次函数的知识点)然后线性项为负数。

也就是说,上表中b1+b2为正,则b3+b4+b5不显着。 由于第二个条件不满足,作者得出假设5不成立的结论。

同理,假设6认为,当两个自变量不一致时,因变量会变小。 为了验证这个假设,文章将两个自变量取相反数。 此时,为了满足假设6的条件,需要简化 后一个方程的线性项的系数应为显着的负值,二次项应为0或显着的负值。

也就是说上表中的b1-b2应该显着为负,那么b3-b4+b5应该为0或者负值。 由于这两个条件都不满足,作者得出假设6不成立的结论。

回归中的变量筛选方法_回归分析筛选变量_lasso回归筛选变量为0

通过这样一张图和一个表格,文章完成了研究问题的答案。 以上是对响应面分析的两个例子的简单介绍。 具体写法请阅读原文。 让我们看看接下来该怎么做。

脚步

spss可以做响应面分析,但我们还是只用R写方法。做响应面分析有两个步骤:

RSA 分为两部分:(a) 模型和 (b) 使用模型的

要在 R 中进行响应面分析,可以使用 rsm 包。 第一步是用二次项拟合多项式回归。 例如,我现在有以下数据,三个变量:x、y和z。

lasso回归筛选变量为0_回归分析筛选变量_回归中的变量筛选方法

首先,我需要运行二次多项式回归:

rsm(z ~ SO(x, y), data = data)

运行后,直接使用上述函数生成的对象即可得到二次多项式的结果。

lasso回归筛选变量为0_回归中的变量筛选方法_回归分析筛选变量

可以看到xy的各项系数都显示出来了。 我们结合这些系数来验证我们的研究假设。

第二步是通过响应面直观地展示模型结果。 代码如下:

persp (rsm, ~x+y, 
       col = color,main="实例操练",
       xlab=c("关注公众号","Codewar"),zlab = "示例",
       r=50,d=30,expand=1,box = T,
       #ltheta=10,lphi=99,
       shade=0.1,theta=-15,phi=15,
       #axes=F,
       contour=list(z="bottom"),
       cex.lab=1,
       cex.axis=0.5,
       ticktype="detailed",
       at = xs(rsm))

在上面的代码中,rsm是模型对象。 运行后响应面图如下:

通过上图,可以直观的看到xy不同变化时,z值对应的变化。

响应面分析到此结束。

概括

今天我就根据两篇已发表的文档的解读,给大家带来对响应面分析的理解,同时也会写一下R语言响应面分析的实际操作。 我希望它能激励你。 感谢您的耐心阅读。 我的文章很详细,重要的代码都在原文中。 我希望每个人都可以自己做。 请将本文转发至您的朋友圈并回复“数据链接”私信即可获取全部数据和我的收藏。 学习材料。 如果对您有用,请记得先保存,然后点赞分享。

也欢迎大家提出意见和建议。 如果想了解什么统计方法,可以在文章下留言。 也许我看到后会写一篇教程给你。 如果您有任何疑问,请随时发送私人信息。 如果您有合作意向,请直接滴滴我。

如果您是一名本科生或研究生,如果您为自己的统计作业、数据分析、模型构建、科研统计设计等而烦恼,如果您在使用SPSS、R、Mplus时遇到任何问题,都可以联系我。 因为我可以为您提供最好、最详细、最耐心的数据分析服务。

如果您对 Z 检验、t 检验、方差分析、多元方差分析、回归、卡方检验、相关性、多水平模型、结构方程模型、中介、量表信度和效度等统计技术有任何疑问,等等,请私信我,详细耐心指导。

如果您或您的团队需要专业的科研数据清洗、建模服务、教学培训需求等请联系我。

如果您是#、#Data #、#、#、#、#、考试.. 如果您在#SPSS、#R-、#Excel、Mplus,那么就是我。 我可以为您提供最好的数据。

您的数据是否使用 z 检验、t 检验、方差分析、Chi-、SEM、模型等...?

然后是我。 我来解决你的...

如果您或您的团队需要数据、模型或……我。

过往亮点

R数据分析:预测模型建立方法及生存数据评估(二)

R数据分析:预测模型建立方法及生存数据评估

R 数据分析:了解和绘制生存分析列线图的详细教程

R数据分析:APA格式和ggsci的绘图方法讲座,请收藏

R数据分析:变量、多项式、样条回归和加性模型之间的非线性关系

Mplus数据分析:如何进行性别差异的相关研究?

R机器学习:分类算法回归分类器原理与实现

R数据分析:PLS结构方程模型介绍、论文报告方法和实际操作

R数据分析:跟随顶级期刊一步步教你如何构建临床预测模型

R数据分析:Lasso回归过滤变量构建Cox模型并绘制列线图

R数据分析:如何使用层次聚类分析创建“症状簇”,实战练习

R数据分析:工具变量回归和孟德尔随机化、实例分析

R数据分析:潜在类轨迹模型LCTM的实践,实例分析

R文本挖掘:中文词云生成,以2021年新年祝福语为例

R机器学习:分类算法的判别分析LDA和QDA原理与实现

R可视化:plot函数的基本操作,初学者教程

R 机器学习:了解重复采样在构建机器学习模型过程中的作用

R 数据分析:使用 lme4 包拟合线性和非线性混合效应模型

R数据分析:如何使用小鼠进行多重插补,实例分析

R数据分析:孟德尔随机化中介的原理与实践

R 数据分析:了解和绘制生存分析列线图的详细教程

R数据分析:cox模型如何做出预测,高分文章转载

R数据分析:广义估计方程GEE的实践与解释

R数据分析:潜在类轨迹模型LCTM的实践,实例分析

R数据分析:潜变量和降维方法(主成分分析和因子分析)

R数据分析:如何绘制结构方程的路径图,包括详细解释

R数据分析:自我报告身高数据的离群值探索

R数据分析:生存分析和竞争事件生存分析的实践与讲解

R 机器学习:朴素贝叶斯和支持向量机的原理和实现

R数据分析:混合效应模型可视化解释,看不懂真的一事无成

R数据分析:如何理解模型中的“控制”,图文并茂

R数据分析:包使用详细介绍

R数据分析:如何使用包建立结构方程模型,实例分析

R机器学习:分类算法的K近邻算法(KNN)原理与实现

R数据分析:潜在增长模型LGM的实践与解释及其与混合模型的比较

R数据分析:论文中的轨迹方法、潜在增长模型和增长混合模型

R数据分析:纵向分类结果分析——马尔可夫多态模型的理解与实操

R数据分析:临床预测模型实践、校准曲线和DCA曲线示例

R数据分析:分享国产COVID-19口服药优于辉瑞文章的统计实践

R数据分析:重写潜在类分析LCA的实践与讲解

R数据分析:势能变换分析LTA的实践与讲解(一)

R机器学习:分类算法的K近邻算法(KNN)原理与实现

R 数据分析:如何制作和解释简单的交互斜率图

R 数据分析:双连续变量相互作用的简单斜率图绘制和解释

如本站内容信息有侵犯到您的权益请联系我们删除,谢谢!!


Copyright © 2020 All Rights Reserved 京ICP5741267-1号 统计代码