数据分析师用r语言做数据分析的时候会很多,也有很多数据分析师对于用r语言不是很了解,下面就谈论一下?
线性回归简介:如下图所示,如果把自变量(也叫independent variable)和因变量(也叫dependent variable)画在二维坐标上,则每条记录对应一个点。线性回规最常见的应用场景则是用一条直线去拟和已知的点,并对给定的x值预测其y值。而我们要做的就是找出一条合适的曲线,也就是找出合适的斜率及纵截矩。
SSE & RMSE
上图中的SSE指sum of squared error,也即预测值与实际值之差的平方和,可由此判断该模型的误差。但使用SSE表征模型的误差有些弊端,比如它依赖于点的个数,且不好定其单位。所以我们有另外一个值去称量模型的误差。RMSE(Root-Mean-Square Error)。
由N将其标准化,并且其单位与变量单位相同。
案例
许多研究表明,全球平均气温在过去几十年中有所升高,以此引起的海平面上升和极端天气频现将会影响无数人。本文所讲案例就试图研究全球平均气温与一些其它因素的关系。
本例我们以1983年5月到2006年12月的数据作为训练数据集,以之后的数据作为测试数据集。
数据
首先加载数据
temp <- read.csv("climate_change.csv")
数据解释
Year 年份 M
Month 月份 T
emp 当前周期内的全球平均气温与一个参考值之差
CO2, N2O,CH4,CFC.11,CFC.12:这几个气体的大气浓度 Aerosols
模型选择
线性回归模型保留两部分。
"数据分析师'选择目标feature。我们数据中,有多个feature,但并非所有的feature都对预测有帮助,或者并非所有的feature都需要一起工作来做预测,因此我们需要筛选出最小的最能预测出接近事实的feature组合。
确定feature系数(coefficient)。feature选出来后,我们要确定每个feature对预测结果所占的权重,这个权重即为coefficient
结合实例选择模型
初始选择所有feature
选择所有feature作为第一个model1,并使用summary函数算出其Adjusted R2为0.7371。
model1 <- lm(Temp ~ MEI + CO2 + CH4 + N2O + CFC.11 + CFC.12 + TSI + Aerosols, temp) summary(model1)
逐一去掉feature
在model1中去掉任一个feature,并记下相应的Adjusted R2如下
Feature |
Adjusted R2 |
CO2 + CH4 + N2O + CFC.11 + CFC.12 + TSI + Aerosols |
0.6373 |
MEI + CH4 + N2O + CFC.11 + CFC.12 + TSI + Aerosols |
0.7331 |
MEI + CO2 + N2O + CFC.11 + CFC.12 + TSI + Aerosols |
0.738 |
MEI + CO2 + CH4 + CFC.11 + CFC.12 + TSI + Aerosols |
0.7339 |
MEI + CO2 + CH4 + N2O + CFC.12 + TSI + Aerosols |
0.7163 |
MEI + CO2 + CH4 + N2O + CFC.11 + TSI + Aerosols |
0.7172 |
MEI + CO2 + CH4 + N2O + CFC.11 + CFC.12 + Aerosols |
0.697 |
MEI + CO2 + CH4 + N2O + CFC.11 + CFC.12 + TSI |
0.6883 |
本轮得到Temp ~ MEI + CO2 + N2O + CFC.11 + CFC.12 + TSI + Aerosols
从model2中任意去掉1个feature,并记下相应的Adjusted R2如下
Feature |
Adjusted R2 |
CO2 + N2O + CFC.11 + CFC.12 + TSI + Aerosols |
0.6377 |
MEI + N2O + CFC.11 + CFC.12 + TSI + Aerosols |
0.7339 |
MEI + CO2 + CFC.11 + CFC.12 + TSI + Aerosols |
0.7346 |
MEI + CO2 + N2O + CFC.12 + TSI + Aerosols |
0.7171 |
MEI + CO2 + N2O + CFC.11 + TSI + Aerosols |
0.7166 |
MEI + CO2 + N2O + CFC.11 + CFC.12 + Aerosols |
0.698 |
MEI + CO2 + N2O + CFC.11 + CFC.12 + TSI |
0.6891 |
任一组合的Adjusted R2都比上一轮小,因此选择上一轮的feature组合作为最终的模型,也即Temp ~ MEI + CO2 + N2O + CFC.11 + CFC.12 + TSI + Aerosols
由summary(model2)可算出每个feature的coefficient如下 。
线性回归介绍
在线性回归中,数据使用线性预测函数来建模,并且未知的模型参数也是通过数据来估计。这些模型被叫做线性模型。最常用的线性回归建模是给定X值的y的条件均值是X的仿射函数。
线性回归是回归分析中第一种经过严格研究并在实际应用中广泛使用的类型。这是因为线性依赖于其未知参数的模型比非线性依赖于其位置参数的模型更容易拟合,而且产生的估计的统计特性也更容易确定。
上面这段定义来自于维基百科。
这个错误估计函数是去对x(i)的估计值与真实值y(i)差的平方和作为错误估计函数,前面乘上的1/2m是为了在求导的时候,这个系数就不见了。至于为何选择平方和作为错误估计函数,就得从概率分布的角度来解释了。
如何调整θ以使得J(θ)取得最小值有很多方法,本文会重点介绍梯度下降法和正规方程法。
梯度下降
在选定线性回归模型后,只需要确定参数θ,就可以将模型用来预测。然而θ需要使得J(θ)最小。因此问题归结为求极小值问题。
梯度下降法流程如下:
1. 首先对θ赋值,这个值可以是随机的,也可以让θ为一个全零向量。
2. 改变θ的值,使得J(θ)按梯度下降的方向进行调整。
梯度方向由J(θ)对θ的偏导数确定,由于求的是极小值,因此梯度方向是偏导数的反方向。更新公式为为:
这种方法需要对全部的训练数据求得误差后再对θ进行更新。(α为学习速度)
正规方程(Normal Equation)数据分析师培训
数据分析咨询请扫描二维码
CDA数据分析师认证:CDA认证分为三个等级:Level Ⅰ、Level Ⅱ和Level Ⅲ,每个等级的报考条件如下: Le ...
2024-11-14自学数据分析可能是一条充满挑战却又令人兴奋的道路。随着数据在现代社会中的重要性日益增长,掌握数据分析技能不仅能提升你的就 ...
2024-11-14数据分析相关职业选择 数据分析领域正在蓬勃发展,为各种专业背景的人才提供了丰富的职业机会。从初学者到有经验的专家,每个人 ...
2024-11-14数据挖掘与分析在金融行业的使用 在当今快速发展的金融行业中,数据挖掘与分析的应用愈发重要,成为驱动行业变革和提升竞争力的 ...
2024-11-14学习数据挖掘需要掌握哪些技能 数据挖掘是一个不断发展的领域,它结合了统计学、计算机科学和领域专业知识,旨在从数据中提取有 ...
2024-11-14统计学作为一门基于数据的学科,其广泛的应用领域和多样的职业选择,使得毕业生拥有丰厚的就业前景。无论是在政府还是企业,统计 ...
2024-11-14在当今高速发展的技术环境下,企业正在面临前所未有的机遇和挑战。数字化转型已成为企业保持竞争力和应对市场变化的必由之路。要 ...
2024-11-13爬虫技术在数据分析中扮演着至关重要的角色,其主要作用体现在以下几个方面: 数据收集:爬虫能够自动化地从互联网上抓取大量数 ...
2024-11-13在数据分析中,数据可视化是一种将复杂数据转化为图表、图形或其他可视形式的技术,旨在通过直观的方式帮助人们理解数据的含义与 ...
2024-11-13在现代银行业中,数字化用户行为分析已成为优化产品和服务、提升客户体验和提高业务效率的重要工具。通过全面的数据采集、深入的 ...
2024-11-13在这个数据飞速增长的时代,企业若想在竞争中占据优势,必须充分利用数据分析优化其营销策略。数据不仅有助于理解市场趋势,还可 ...
2024-11-13数据分析行业的就业趋势显示出多个积极的发展方向。随着大数据和人工智能技术的不断进步,数据分析在各行各业中的应用变得越来越 ...
2024-11-13市场数据分析是一门涉及多种技能和工具的学科,对企业在竞争激烈的市场中保持竞争力至关重要。通过数据分析,企业不仅可以了解当 ...
2024-11-13数据分析与数据挖掘是数据科学领域中两个关键的组成部分,它们各有独特的目标、方法和应用场景。尽管它们经常在实际应用中结合使 ...
2024-11-13在如今这个数据驱动的时代,数据分析能力已经成为许多行业的重要技能。无论是为工作需要,还是为了职业转型,掌握数据分析都能够 ...
2024-11-13在如今这个数据驱动的时代,数据分析能力已经成为许多行业的重要技能。无论是为工作需要,还是为了职业转型,掌握数据分析都能够 ...
2024-11-13作为一名业务分析师,你肩负着将业务需求转化为技术解决方案的重任。面试这一角色时,涉及的问题多种多样,涵盖技术技能、分析能 ...
2024-11-13自学数据分析可能看似一项艰巨的任务,尤其在开始时。但是,通过一些策略和方法,你可以系统地学习和掌握数据分析的相关知识和技 ...
2024-11-10Excel是数据分析领域中的一款强大工具,它凭借其灵活的功能和易用的界面,成为了许多数据分析师和从业者的首选。无论是简单的数 ...
2024-11-10在快速发展的商业环境中,数据分析能力已经成为许多行业的核心竞争力。无论是初学者还是经验丰富的专家,搭建一个有效的数据分析 ...
2024-11-10