首页 > 其他分享 >【视频】多元线性回归模型原理讲解与R语言实例

【视频】多元线性回归模型原理讲解与R语言实例

时间:2024-05-10 23:19:42浏览次数:31  
标签:变量 模型 拟合 电影 实例 讲解 线性 回归 票房

原文链接:https://tecdat.cn/?p=36149

原文出处:拓端数据部落公众号

分析师:Xue Yang

近年来,随着计量经济学和统计学的快速发展,回归模型作为一种有效的数据分析工具,被广泛应用于金融市场的分析中。回归模型能够通过建立变量之间的数学关系,揭示变量之间的相互作用机制,并预测未来趋势。在金融领域,回归模型被用于分析股票价格、市场波动率、风险溢价等多种金融现象,为投资者提供了重要的决策依据。

本文将通过视频讲解,展示如何用多元线性回归模型进行金融证券市场指数与成分股预测,并结合一个R语言逐步回归模型对电影票房、放映场数、观影人数预测可视化实例的代码数据,为读者提供一套完整的实践数据分析流程。

数据集与多元线性回归模型

给定数据集 {(y_i, x_1_i, ..., x_p_i) : i = 1, ..., n},若因变量(或被解释变量)y与自变量(或解释变量)x_1, ..., x_p之间存在以下线性关系:

[ y_i = \beta_0 + \beta_1 x_1_i + \beta_2 x_2_i + \ldots + \beta_p x_p_i + \epsilon_i ]

我们称之为因变量y关于自变量x_1, ..., x_p的多元线性回归模型。其中,(\beta_0)为回归常数,(\beta_1, ..., \beta_p)为回归系数。

关于随机误差项(\epsilon_i) (i = 1, ..., n),我们做出以下假设:

  1. 均值为零:(E(\epsilon_i) = 0)
  2. 无自相关:对于任意的i ≠ j,(Cov(\epsilon_i, \epsilon_j) = 0)

备注:当p=1时,上述模型退化为一元线性回归模型。

多元线性回归模型的基本假设

  1. 线性关系:因变量与自变量之间的关系是线性的。
  2. 独立性:各自变量之间是相互独立的。
  3. 正态性:各变量(包括误差项)满足正态性。
  4. 方差齐性:误差项的方差是恒定的,不随自变量变化。

多元线性回归模型的优点

  • 简单易用:模型构建直观,易于理解和操作。
  • 精度高:在满足假设条件的情况下,模型能够提供准确的预测。
  • 应用广泛:适用于多种领域和场景的数据分析。

多元线性回归模型的缺点

  • 多重共线性问题:当自变量之间存在高度相关性时,模型的稳定性和解释性可能受到影响。
  • 缺乏因果推断能力:模型只能描述变量之间的统计关系,不能直接推断因果关系。
  • 误差项假设的敏感性:模型的结果对误差项假设的满足程度较为敏感,假设不满足可能导致结果失真。

回归模型探讨金融证券市场指数与成分股的变量关系

金融市场中,很多变量相互依存但没有严格的函数关系,因此结合指数公式编制特有的线性回归模型形式,探讨金融证券市场指数与成分股的变量关系,进一步进行指数追踪。

image.png

数据来源:(采集时间2023年2月27日):西南证券金点子财富管理终端2023年1月13日到2023年2月27日的上证50指数及其成分股的15分钟k线的收盘价。

image.png

image.png

回归诊断与多重共线性的消除方法

在进行回归分析时,我们通常需要关注几个重要的诊断指标,以确保模型的准确性和可靠性。这些指标包括异常值和强影响点、异方差、自相关以及多重共线性。

  1. 异常值和强影响点

    • 异常值可能是由于测量误差、数据录入错误或真实的极端观测所引起的,它们可以显著影响线性回归模型的拟合结果和假设检验的准确性。
    • 强影响点不仅具有高杠杆,还会对回归模型的拟合直线造成显著的“拖曳”效果。这些点可能是由于极端观测值、样本数量少或数据结构异常等因素所引起的。
    • 对于异常值和强影响点,可以使用统计方法进行检测和处理,如绘制残差图、使用统计检验等。
  2. 异方差

    • 异方差通常发生在最大和最小观测值之间有很大范围的数据集中,或当模型未正确指定时。异方差的存在会影响OLS(普通最小二乘)估计量的最优性和假设检验的有效性。
    • 识别异方差的方法包括使用残差图(如观察是否存在向外开口或闭合的漏斗形状)和统计检验(如White检验)。
  3. 自相关

    • 自相关是指回归模型的误差项之间存在相关性,这通常是由于时间序列数据中的遗漏变量、数据生成过程的动态性等原因引起的。自相关会影响回归系数的估计值和假设检验的准确性。
    • 可以使用统计检验(如Durbin-Watson检验)来检验残差之间是否存在自相关,并根据检验结果进行相应的处理。
  4. 多重共线性

    • 多重共线性是指自变量之间存在高度相关性,这会导致回归系数的估计值不稳定、难以解释,并可能增加预测误差。

    • 消除多重共线性的方法包括:

      • 剔除引起多重共线性的自变量:通过相关分析或VIF(方差膨胀因子)检验识别出高度相关的自变量,并剔除其中一个或多个。
      • 增大样本容量:通过增加样本量来降低自变量之间的相关性。
      • 变换模型形式:尝试使用不同的模型形式(如非线性模型、交互项等)来降低共线性。
      • 回归系数的有偏估计:采用岭回归(Ridge Regression)或主成分回归(Principal Component Regression)等方法来估计回归系数,这些方法在自变量高度相关时仍能提供较为稳定的估计结果。

在处理以上问题时,需要综合考虑数据的特性、模型的假设以及研究目的等因素,选择合适的方法进行处理。

image.png

预测结果

image.png

R语言逐步回归模型对电影票房、放映场数、观影人数预测可视化

本文通过利用回归模型帮助客户对电影的票房数据(以及放映场数,观影人数)进行了研究,确定了决定电影的票房的重要因素。并讲述、论证了预测电影的票房是电影投资的至关重要的环节。通过对电影票房预测技术的发展和探讨,深度剖析了电影票房预测这个研究课题。

数据描述

我们收集了中国电影发行放映协会统计的过千万票房的国产电影的相关统计指标,共涉及275部影片。

数据浏览: image.png

因变量为:

放映场数(千场):累积量。

 

观影人数(万人):累积量。

票房(万元):累积量。票房均值在一亿人民币左右,其中《人在囧途之泰囧》票房达到了12.7亿,位列第一。

自变量为:

•影片部分

genre  影片类别:分类变量,共有15个类型。为了获得大量的观众群体,大多数影片都兼具许多种影片类型,因此我们仅选取了该片最主要的类型。15个类型分别是:喜剧,魔幻,动作,爱情,灾难,历史剧情,励志,主旋律,警匪,悬疑,动画,儿童,惊悚,家庭伦理。

Year 上映年份:2010-2013四年

month 上映月份:1-12

week 上映周数:1-53,从当年1月1号起记为第一周

distribute 电影分级:C/G/L/S

runtime 时长:分钟。过长或过短的电影都会对票房产生影响,找到合理的时长,从而能够有效的控制电影的剪辑。

Story 作品是否改编 :该指标是电影产品的核心元素,在内容为王的当下,好的剧本往往能够吸引受众,对于国产影片,观众更看重的是好的故事,他们往往对国产影片的技术并不抱太大希望。因此,该指标主要包括两个水平,一是畅销小说改编成剧本1,另一个则是非改编剧本也就是原创剧本0。(N=改编,S=原创

reality 作品是否真人真事:1=真实,0=虚构

remake  作品是否翻拍:1=翻拍,0=非翻拍

sequel  作品是否续集:好莱坞的一大宗旨是誓将续集进行到底,真可谓天长地久有时尽,大片续集无绝期!因为第一,好拍;第二,票房好。那么,在中国市场,这招是否仍然管用?

•导演演员部分

导演姓名

导演年代

第几部作品:该片是该导演的第几部作品。冠军《人在囧途之泰囧》是导演徐峥的处女作,拿到了12亿的票房,而喜剧《财神客栈》已经是导演王晶的第110部影片。老导演or新导演,哪一种更吸引人?是久炼成钢,姜越老越辣?还是廉颇老矣,洗洗回家睡吧?

导演得奖情况:1=得奖,0=没得奖

导演是否转型:导演是一门确实能够自学成才的工种,就像久病成医,演的多了,拍的多了,自然也能成为优秀的导演。在中国电影市场中,演员转型当导演的赵薇、徐峥;作家转型的郭敬明、韩寒,我们希望看到已经在自己的领域取得成就的这些名人,随着工种的转变是否会对票房有影响。

Baidu index 主演的百度指数:影片的主演在分析中是一个字符变量,为了更好的使用这一指标,同时优化工作效率,我们决定在相同的时间段,选择所有演员百度指数的平均值作为衡量主演的标准。因为大多数电影不会仅有一个主演,所以我们选取了两个主演。百度指数越高,代表该演员知名度越高。

查看数据  

该数据集有以下一些变量:

image.png

image.png

从上表可以看到不同变量的缺失数据均值中值最大最小值等情况和分布情况。

image.png

image.png

image.png

从直方图来看,数据大致服从正态分布,说明数据可以进行回归模型的建立。

模型建立

    主要思路 为了准确的估计票房,了解电影票房的一般规律,更好为电影投资方提供参考意见,本文从电影票房和电影相关属性出发,采用多元回归分析方法,建立了线性回归模型,得出了电影票房变动的影响因素. 具体分析步骤

1.描述性统计,初步查看每个变量的均数中值等数据.

2.选择多项式回归模型

2.1变量选取 通过回归模型筛选出显著性较强的变量进行回归建模。

2.2显著性检验 根据F值和p值统计量来判断模型是否具有显著的统计意义。

2.3拟合预测 使用得到的模型对实际数据进行拟合和预测。

3.拟合不同的模型。查看模型效果。

4.分析得出结论 得出各个自变量之间的关系,以及它们对因变量的影响及其意义。

(一)转换数据,拟合多元线性模型

image.png

建立多元线性——票房

尝试通过最直观的解释建立模型,进行多元线性模型并进行分析。

从全变量模型可以看出大部分变量无法估计出其参数,说明部分变量不适合用来预测票房,因此对其中的部分变量进行删减后。得到筛选后的回归模型。

显示回归结果

image.png

image.png

image.png

回归结果分析

从输出结果的变量sig值可以看出,导演的情况和是否有续集以及电影的时长对电影的票房有巨大的影响。 从变量的coefficient回归系数来看,导演的情况和是否有续集有正相关关系。可以看到电影的票房和上映国家也有显著的关系,在美国上映的电影票房较高,可以看到他们的回归系p数在显著性水平0.05下均显著不为零。

 残差分析可以对回归模型的假设条件即随机误差项是否独立同分布进行检验,同时还可以找出离群点。 显示结果如下:

image.png

由于模型中部分系数是不显著,因此需要对模型进行改进,本文采用迭代回归模型建模。

image.png

使用逐步回归之后对模型进行残差检验。下图是残差直方图,从图上可以发现, 所有点基本上是随机地分散在0周围,密度曲线近似为正态分布。右边是正态pp图,其意义与左边类似;表明随机误差项是服从正态分布的,其原因是正态qq图近似地可以看成一条直线;.

1.png

拟合效果图形展示

以 原始数据作为x轴,回归拟合值为轴作图,在xy面上的点用直线连接见图。
原始图和拟合值的关系散点图

image.png

由于大部分黑色的实际数据点被红色的预测点覆盖,因此,模型具有较好的预测效果。

进行多元线性模型并进行分析——放映场数

image.png

回归结果分析

从输出结果的变量sig值可以看出,和票房的回归结果类似。导演的情况和是否有续集以及电影的时长对电影的演出场数有巨大的影响。 从变量的coefficient回归系数来看,导演的情况和是否有续集有正相关关系。可以看到电影的票房和上映国家也有显著的关系,在美国上映的电影票房较高,可以看到他们的回归系p数在显著性水平0.05下均显著不为零。

回归结果

 残差分析可以对回归模型的假设条件即随机误差项是否独立同分布进行检验,同时还可以找出离群点。 显示结果如下:

image.png

由于模型中部分系数是不显著,因此需要对模型进行改进,本文采用逐步回归模型建模。

逐步回归模型建模

image.png

使用逐步回归之后对模型进行残差检验。下图是残差直方图,从图上可以发现, 所有点基本上是随机地分散在0周围,密度曲线近似为正态分布。右边是正态pp图,其意义与左边类似;表明随机误差项是服从正态分布的,其原因是正态qq图近似地可以看成一条直线;.

image.png

左图是残差直方图,从图上可以发现, 所有点基本上是随机地分散在0周围,密度曲线近似为正态分布。右边是正态pp图,其意义与左边类似;表明随机误差项是服从正态分布的,其原因是正态qq图近似地可以看成一条直线;

拟合效果图形展示

以 原始数据作为x轴,回归拟合值为轴作图,在xy面上的点用直线连接见图。
原始图和拟合值的关系散点图

image.png

由于大部分黑色的实际数据点被红色的预测点覆盖,因此,模型具有较好的预测效果。

进行多元线性模型并进行分析——观影人数

image.png

回归结果分析

从输出结果的变量sig值可以看出,和票房的回归结果类似。导演的情况和是否有续集以及电影的时长对电影的演出场数有巨大的影响。 从变量的coefficient回归系数来看,导演的情况和是否有续集有正相关关系。可以看到电影的票房和上映国家也有显著的关系,在美国上映的电影票房较高,可以看到他们的回归系p数在显著性水平0.05下均显著不为零。

回归结果

 残差分析可以对回归模型的假设条件即随机误差项是否独立同分布进行检验,同时还可以找出离群点。 显示结果如下:

image.png

由于模型中部分系数是不显著,因此需要对模型进行改进,本文采用逐步回归模型建模。

image.png

使用逐步回归之后的模型进行残差检验。下图是残差直方图,从图上可以发现, 所有点基本上是随机地分散在0周围,密度曲线近似为正态分布。右边是正态pp图,其意义与左边类似;表明随机误差项是服从正态分布的,其原因是正态qq图近似地可以看成一条直线;.

image.png

左图是残差直方图,从图上可以发现, 所有点基本上是随机地分散在0周围,密度曲线近似为正态分布。右边是正态pp图,其意义与左边类似;表明随机误差项是服从正态分布的,其原因是正态qq图近似地可以看成一条直线;

拟合效果图形展示

以原始数据作为x轴,回归拟合值为轴作图,在xy面上的点用直线连接见图。
原始图和拟合值的关系散点图

image.png

由于大部分黑色的实际数据点被红色的预测点覆盖,因此,模型具有较好的预测效果。

结论

通过以上分析可以明显发现,面对良莠不齐的影片,通过集体智慧去粗取精,导演的情况和是否有续集以及电影的时长对电影的演出场数有巨大的影响,是一种帮助建立品位的电影体并作为生产者参考标准之一,他们直接影响电影公司对于导演、演员的选取。

分析师

image.png

Xue Yang

这里要感谢Xue Yang对本文做出的贡献,她拥有重庆大学应用统计学的硕士学位。她不仅具备深厚的统计学理论知识,而且熟练掌握R语言和Python这两种在数据分析领域广泛使用的编程语言。她曾参与多个实际项目的数据分析工作,涉及金融、医疗、电商等多个领域。

mckinseytech-cloud campaign-1536x1536-notext.jpg

标签:变量,模型,拟合,电影,实例,讲解,线性,回归,票房
From: https://www.cnblogs.com/tecdat/p/18185469

相关文章

  • static讲解--静态和非静态方法的调用
    packageDemo07;publicclassStudent{privatestaticintage;//静态的变量privatedoublescore;//非静态变量publicvoidrun(){go();//非静态的方法可以直接调用静态的方法}publicstaticvoidgo(){}publicstaticvoidmain(String[]args){newStudent(......
  • 第 1 节 向量及其线性运算
    第一节向量及其线性运算一、向量的概念向量:既有大小,又有方向的量自由向量:与起点无关的向量向量的大小叫做向量的模.向量\(\vec{AB}\),a和\(\vec{a}\)的模依次记作\(|\vec{AB}|\),|a|和\(|\vec{a}|\).模等于1的向量叫做单位向量.模等于零的向量叫做零向量,记作0......
  • P4839 P 哥的桶 线段树+线性基
    P4839P哥的桶线段树+线性基题目链接题意:现在有\(n\)个桶,需要支持2种操作。\(1\)\(k\)\(x\):将一个价值为\(x\)的球放进\(k\)号桶。\(2\)\(l\)\(r\):求出在\(l\)号桶到\(r\)号桶之间拿球,价值异或和最大值。思路:单点修改,区间查询。可以想到用线段树维护......
  • mongodb单实例开启oplog
    需求DTS传输同步数据的需求,需要将mongodb里的数据更新、数据增加操作同步给FC函数MongoDB中的Oplog(操作日志)是一个特殊的集合,用于记录数据库的所有操作。Oplog是MongoDB复制集中的一个重要组成部分,它允许从节点通过读取Oplog来实现与主节点的数据同步。所以要把单实例调整成复......
  • 线性同余-常见语言编译器参数
    Sourcem(multiplier) a   (increment) coutputbitsofseedin rand() /Random(L)NumericalRecipes23216645251013904223 Borland C/C++232226954771bits30..16in rand(),30..0inlrand()glibc (usedby GCC)[5]231110351524512345b......
  • 配置mysql多实例
    配置mysql多实例需要专用的、支持多实例的mysql软件。这里用到的是mysql-5.7.24-linux-glibc2.12-x86_64.tar.gz解压mysql软件包tar-xfmysql-5.7.34-linux-glibc2.12-x86_64.tar.gz-C/usr/local/mysql配置多实例vim/etc/my.cnf[mysqld_multi]            ......
  • JDK源码阅读-------自学笔记(二十六)(java.util.Map 自定义讲解)
    一、简介Map就是用来存储“键(key)-值(value)”对的.通过键寻找value,所以键不能重复.数组的本质也是一种键值对,区别就是索引一般是数字,而Map的Key可以是任意对象(字符串,数字),相当于把数组的索引范围扩的更大,使用更方便.实际开发中较为常用.二、Map的常用方法实例(1......
  • 【Azure Standard Logic App】Workflow积压非常严重的情况下, 执行实例居然不能自动缩
    问题描述测试标准版本的LogicApp应用,消费ServiceBus中的消息。当ServiceBus中堆积了大量消息的情况下,Workflow依旧只在一个实例上运行。而LogicApp的自动缩放设置的最大为20个,为什么没有自动缩放呢? 问题解答因为这个StandardLogicApp集成进入到一个虚拟网络中,默认情......
  • P4301 [CQOI2013] 新Nim游戏 线性基
    P4301[CQOI2013]新Nim游戏线性基题目链接题意:两个人进行游戏,有\(n\)堆火柴,每堆有若干根,在第一个回合中,双方可以直接拿走若干个整堆的火柴,可以一堆不拿,但不可以全部拿走。接下来的回合进行\(Nim\)游戏。现在你是先手,第一回合如何拿才能保证获胜,并且让第一回合拿的数量尽......
  • vsftpd多实例多用户不同权限
    ftp配置文件实现匿名用户和密码用户同样权限,更改#anon_other_write_enable=NO改配置可以实现匿名用户只能上传下载不能修改删除。setfacl-dR-mu:ftp:rwx/data/ftp2/dachui/ 设置ftp用户家目录acl权限可以实现同密码用户一样的权限。复制该配置文件修改改端口号或liste_ad......