计量经济与时间序列_自协方差(AutoCovariance)算法解析(Python)

1  样本的自协方差函数的通式如下:

2  其实,后面要计算的自相关函数也可以用自协方差来表示:

 1 TimeSeries = [11.67602657, 5.637492979, 1.375516942, 0.618705492, -0.152047234, -0.508555434, -6.065288121, -9.417602801,  2               -10.47205437, -8.018063902, 0.523277554, 4.86893283, 4.23977562, -10.2344375, -3.463362573, 36.51326577,  3               -8.518370963, -15.37474905, -7.687911176, 4.818978874, 7.876681639, 1.763788865]
 4 Zt = []
 5 LZt = []
 6 AutoCovariance = []
 7 # 自协方差存为列表形式,显示格式如下:
 8 # [γ0,γ1,γ2,γ3,....]
 9 # [γk,....]  k = 0,1,2,3....
10 total = 0
11 i = 1
12 while i < len(TimeSeries):
13     L = TimeSeries[i::]
14     LL = TimeSeries[:-i:]
15     total = total + TimeSeries[i - 1]
16     Zt.append(L)
17     LZt.append(LL)
18     i += 1
19 total = total + TimeSeries[-1]
20 avg = total / len(TimeSeries)
21
22 k = 0
23 result_temp0 = 0
24 # 首先求γ0的值
25 while k < len(TimeSeries):
26     result_temp0 = result_temp0 + pow((TimeSeries[k] - avg), 2)
27     k += 1
28 AutoCovariance.append(result_temp0)
29 print(AutoCovariance)
30 # 显示结果:
31 #[2418.4380925669107]
32
33 # 然后计算分子
34 p = 0
35 q = 0
36 while p < len(Zt):
37     q = 0
38     result_temp1 = 0
39     while q < len(Zt[p]):
40         result_temp1 = result_temp1 + (Zt[p][q] - avg) * (LZt[p][q] - avg)
41         q += 1
42     AutoCovariance.append(result_temp1)  # 保留小数点后三位
43     p += 1
44 print(AutoCovariance)
45 print(len(AutoCovariance))
46 # 显示结果:
47 # [2418.4380925669107, 154.73148259271665, -909.2825195711046, -216.01009095585525, 381.064309087456, 253.8899860047866,
48 #  -455.76866093122146, -513.7425279639118, -234.77764765735802, 51.726042700512416, 266.05419016606146, 116.26795577123028,
49 #  -76.63272849007276, -209.6990237967077, 78.50856193561651, 336.9664948029677, -195.8237009651655, -211.6227696432054, -50.67152070500246,
50 #  103.09738426011762, 101.91169142979405, 20.59404564489024]

原文地址:https://www.cnblogs.com/noah0532/p/8510589.html

时间: 2024-11-01 17:41:51

计量经济与时间序列_自协方差(AutoCovariance)算法解析(Python)的相关文章

计量经济与时间序列_时间序列分析的几个基本概念(自相关函数,偏自相关函数等)

1.  在时间序列分析中, 数学模型是什么?数学公式又是什么?数学推导过程又是什么?... ... 一句话:用数学公式后者符号来表示现实存在的意义.数学是"万金油"的科学,它是作为工作和分析方法运用到某个学科当中.比如在物理学中,数学公式或者数学符号也是表示现实存在的意义,G表示重力,再比如用什么表示分子,这些东西都是现实存在,而通过在数学层面的公式计算或者推导,就能够得到某种结果反推到现实中存在的意义是否准确.说白了是把现实的意义符号化和简单化的表示出来. 2.   时间序列分析属于

计量经济与时间序列_平稳性

1.   平稳性: 1.1   任何一个时间序列都可以被看做是由随机过程产生的结果.和普通两变量和多变量不一样,任何一个时间点上的值都是随机过程产生的,也是都是随机的. 1.2   如果一个随机过程所产生的时间序列期望和方差在任何时间过程上都是常数,并且任何两个时期之间的协方差不依赖于这两个时期的距离或之后,而不依赖于计算这两个协方差的实际时间,就称改时间序列是平稳的.(Stationary) 1.3   期望和方差在任何时间过程上都是常数,符合期望为0,方差为1的正太分布假设. 1.4   任

计量经济与时间序列_时间序列过程的移动平均和自回归表示

1   在时间序列分析中有两种有用的表示来描述时间序列过程.一种是将过程写成一列不相关的随机变量的线性组合.这个过程叫moving average过程,也叫MA过程. 2   Wold(1938年)证明:纯非确定性的平稳过程(即改过程不包含能够由自身过去值进行精确预报的确定性成分)能够表示成下面的式子: 3   Zt = μ + at + φ1at-1 + φ2at-2+ ... ... (3.1) 4   (3.1)的式子中,Wold表示说,任何能够表示成这种形式的过程称为非确定性过程.这也叫

计量经济与时间序列_滞后算子L的定义

1.   为了使计算简单,引入滞后算子的概念: 2.   定义LYt = Yt-1 , L2Yt = Yt-2,... , LsYt = Yt-s. 3.   也就是把每一期具体滞后哪一期的k提到L的上方,来用一个Yt来标记具体属于哪一个滞后期.默认,Yt-1的上方为1,其实不用写. 4.   一定和一个滞后变量放在一起的,不能单独出现L. 5.   用滞后算子来表示比较方便一些,但是最后要带回去,表示具体的哪一个滞后期. 原文地址:https://www.cnblogs.com/noah053

图形学_画线算法(DDA、Bresenham)

1. DDA算法实现直线绘制(需先安装easyx,百度下载即可) 1 #include "easyx.h" 2 #include "math.h" 3 #include "windows.h" 4 #include "stdio.h" 5 #include "stdlib.h" 6 #include "conio.h" 7 #include "graphics.h"

图形学_多边形扫描转换_边界标志算法

边界标志算法 1. 对多边形的每一条边进行扫描转换,即对多边形边界所经过的象素作一个边界标志. 2.填充 对每条与多边形相交的扫描线,按从左到右的顺序,逐个访问该扫描线上的象素. 取一个布尔变量inside来指示当前点的状态,若点在多边形内,则inside为真.若点在多边形外,则inside为假. Inside 的初始值为假,每当当前访问象素为被打上标志的点,就把inside取反.对未打标志的点,inside不变. 1 #include "easyx.h" 2 #include &qu

Mmseg中文分词算法解析

@author linjiexing 开发中文搜索和中文词库语义自己主动识别的时候,我採用都是基于mmseg中文分词算法开发的Jcseg开源project.使用场景涉及搜索索引创建时的中文分词.新词发现的中文分词.语义词向量空间构建过程的中文分词和文章特征向量提取前的中文分词等,整体使用下来,感觉jcseg是一个非常优秀的开源中文分词工具,并且可配置和开源的情况下,能够满足非常多场景的中文分词逻辑.本文先把jcseg使用到最主要的mmseg算法解析一下. 1. 中文分词算法之争 在分析mmseg

DeepFM算法解析及Python实现

1. DeepFM算法的提出 由于DeepFM算法有效的结合了因子分解机与神经网络在特征学习中的优点:同时提取到低阶组合特征与高阶组合特征,所以越来越被广泛使用. 在DeepFM中,FM算法负责对一阶特征以及由一阶特征两两组合而成的二阶特征进行特征的提取:DNN算法负责对由输入的一阶特征进行全连接等操作形成的高阶特征进行特征的提取. 具有以下特点: 结合了广度和深度模型的优点,联合训练FM模型和DNN模型,同时学习低阶特征组合和高阶特征组合. 端到端模型,无需特征工程. DeepFM 共享相同的

《机器学习实战》之K-均值聚类算法的python实现

<机器学习实战>之K-均值聚类算法的python实现 最近的项目是关于"基于数据挖掘的电路故障分析",项目基本上都是师兄们在做,我只是在研究关于项目中用到的如下几种算法:二分均值聚类.最近邻分类.基于规则的分类器以及支持向量机.基于项目的保密性(其实也没有什么保密的,但是怕以后老板看到我写的这篇博文,所以,你懂的),这里就不介绍"基于数据挖掘的电路故障分析"的思路了. 废话不多说了,开始正题哈. 基本K-均值聚类算法 基本K均值算法的基本思路为:首先选择