【R语言入门与数据分析-5】 数据分析实战

Python010

【R语言入门与数据分析-5】 数据分析实战,第1张

老师的吐槽大会,乐死我了。hhh

regression,通常指用一个或者多个预测变量,也称自变量或者解释变量,来预测响应变量,也称为因变量、效标变量或者结果变量的方法

存在多个变量

AIC 考虑模型统计拟合度、用来拟合的参数数目

AIC值越小,越好

更多的变量:

图一:是否呈线性关系, 是

图二:是否呈正态分布,一条直线,正态分布

图三:位置与尺寸图,描述同方差性,如果方差不变,水平线周围的点应该是随机分布

图四:残差与杠杆图,对单个数据值的观测,鉴别离群点、高杠杆点、强影响点

模型建好,用predict函数对剩余500个样本进行预测,比较残差值,若预测准确,说明模型可以。

analysis of variance,简称ANOVA,也称为变异数分析。用于两个及两个以上样本均数差别的显著性检验。广义上,方差分析也是回归分析的一种,只不过线性回归的因变量一般是连续型变量。自变量是因子时,研究关注的重点通常会从预测转向不同组之间的差异比较。也就是方差分析。

power analysis,可以帮助在给定置信度的情况下,判断检测到给定效应值所需的样本量。也可以在给定置信度水平情况下,计算在某样本量内能检测到给定效应值的概率

拓展了线性模型的框架,包含了非正态因变量的分析。线性回归、方差分析都是基于正态分布的假设

-泊松回归 ,用来为计数资料和列联表建模的一种回归分析。泊松回归假设因变量是泊松分布,并假设它平均值的对数可被未知参数的线性组合建模

-logistic 回归

通过一系列连续型或者类别型预测变量来预测二值型结果变量是,logistic 回归是一个非常有用的工具。流行病学研究中用的多。

Principal Component Analysis,PCA,探索和简化多变量复杂关系的常用方法。 是一种数据降维技巧。可以将大量相关变量转化为一组很少的不相关变量。这些无关变量成为主成分。主成分是对原始变量重新进行线性组合,将原先众多具有一定相关性的指标,重新组合为一组的心得相互独立的综合指标。

探索性因子分析法 exploratory factor analysis,简称为EFA,是一系列用来发现一组变量的潜在结构的方法。通过找寻一组更小的、潜在的活隐藏的结构来解释已观测到的、显式的变量间的关系

因子分析步骤与PCA一致

啤酒与尿布

举一个例子吧,比如月度的数据,就是周期为12,它有季节影响。

先对其1阶12步差分,通过看acf pac f看是简单加法模型,还是乘法季节模型

如果是乘法模型那就要对季节部分模拟arima模型

季节部分的arima是以周期位置的acf pacf 确定其模型参数 ar ma

seasonal=list(order=c(_,1,_),period=_)周期是默认的

------------------------------------------------------------

教你一个简单的方法:

下载 forecast包,auto.arima( ) 直接拟合,就会给出系统认为的arima模型的各个参数。

然后 forecast( h=预测期数)行了。

这是对外行人来说的,

但是如果你真的想学好的话,还需要对模型进行着各种检验,特别是残差。

时间序列(time series)是随机变量Y 1 、Y 2 、……Y t 的一个序列,它是由等距的时间点序列索引的。

一个时间序列的均值函数就是该时间序列在某个时间索引t上的期望值。一般情况下,某个时间序列在某个时间索引t 1 的均值并不等于该时间序列在另一个不同的时间索引t 2 的均值。

自协方差函数及自相关函数是衡量构成时间序列的随机变量在不同时间点上相互线性依赖性的两个重要函数。自相关函数通常缩略为ACF函数。ACF函数是对称的,但是无单位,其绝对值被数值1约束,即当两个时间序列索引之间的自相关度是1或-1,就代表两者之间存在完全线性依赖或相关,而当相关度是0时,就代表完全线性无关。

平稳性:实质描述的是一个时间序列的概率表现不会随着时间的流逝而改变。常用的平稳性的性质有严格平稳和弱平稳两个版本。tseries包的adf.test()函数可以检验时间序列的平稳性,返回的p值小于0.05则表示是平稳的。

白噪声是一个平稳过程,因为它的均值和方差都是常数。

随机漫步的均值是常数(不带漂移的随机漫步),但它的方差是随着时间的变化而不同的,因此它是不平稳的。

自回归模型(Autoregressive models, AR)来源于要让一个简单模型根据过去有限窗口时间里的最近值来解释某个时间序列当前值的想法。

自回归条件异方差模型:ARIMA模型的关键前提条件是,虽然序列本身是非平稳的,但是我们可以运用某个变换来获得一个平稳的序列。像这样为非平稳时间序列构建模型的方法之一是作出一个假设,假设该模型非平稳的原因是该模型的方差会以一种可预见的方式随时间变化,这样就可以把方差随时间的变化建模为一个自回归过程,这种模型被称为自回归条件异方差模型(ARCH)。加入了移动平均方差成分的ARCH模型称为广义自回归条件异方差模型(GARCH)。

任务:预测强烈地震

数据集:2000-2008年期间在希腊发生的强度大于里氏4.0级地震的时间序列。

不存在缺失值。

将经度和纬度之外的变量转换为数值型。

从图上可以看出,数据在30次左右波动,并且不存在总体向上的趋势。

通过尝试多个不同的组合来找到最优的阶数参数p,d,q,确定最优的准则是使用参数建模,能使模型的AIC值最小。

定义一个函数,它会针对某个阶数参数拟合出一个ARIMA模型,并返回模型的AIC值。如果某组参数导致模型无法收敛,就会产生错误,并且无法返回AIC,这时需要人为设置其AIC为无限大(InF)。

调用函数,选取最合适的模型。

然后找出最优的阶数参数:

得到最合适的模型为ARIMA(1, 1, 1)。再次使用最优参数训练模型。

使用forecast包预测未来值。

带颜色的条带是预测的置信区间,蓝色线表示均值,结果表示在后续的10个月里,地震的数量会有小幅增加。

检查自相关函数:

ACF绘图:虚线显示了一个95%的置信区间,特定延迟对应的ACF函数值如果处于该区间内,就不会被认为具有统计显著性(大于0)。这个ACF轮廓表明,针对本数据集,简单的AR(1)过程可能是一种合适的拟合方式。

PACF为偏自相关函数,是将时间延迟K的PACF定义为在消除了小于K的延迟中存在的任何相关性影响的情况下所产生的相关性。