[关闭]
@fanxy 2016-07-12T10:55:34.000000Z 字数 1198 阅读 2107

第五讲 线性代数基础与应用

樊潇彦 复旦大学经济学院 经济数学

1. 课件下载

Ch05.pdf2152.6kB

2. 程序附录

  1. setwd("D:\\...")

2.1 矩阵运算的基本命令

  1. A = matrix(1:9,nrow=3) # 建立矩阵
  2. apply(A,1,sum) # 行加总
  3. apply(A,2,sum) # 列加总
  4. a=A[,1]; t(a)%*%a # 欧氏范数
  5. I=diag(3) # 3维单位阵
  6. A_T = t(A) # 转置
  7. B=A+I # 加法
  8. solve(B) # 求逆
  9. A%*%B # 矩阵乘法

2.2 求解线性方程组:剑桥食谱

  1. A=matrix(c(36,51,13,
  2. 52,34,74,
  3. 0,7,1.1),nrow=3,byrow=T)
  4. b=c(33,45,3)
  5. solve(A,b)

2.3 投入-产出表

  1. M=matrix(c(15,20,30,
  2. 30,10,45,
  3. 20,60,0),nrow=3,byrow=T) # 中间投入矩阵
  4. d=c(35,115,70) # 最终需求
  5. x=c(100,200,150) # 总产出
  6. A=M/matrix(rep(x,each=3),nrow=3) # 直接消耗系数矩阵
  7. solve(diag(3)-A)%*%d # 检验最终产出公式
  8. solve(diag(3)-A)%*%c(100,200,300) # P185 最终需求变化对总产出的影响

2.4 特征值和特征向量

  1. M=matrix(c(3,1,2,4),nrow=2)
  2. lambda=eigen(M)$value
  3. ev=eigen(M)$vectors
  4. ev[,1]*lambda[1]
  5. ev[,2]*lambda[2]

2.5 稳态人口分布

  1. # 自已写一个可以计算矩阵的幂的函数
  2. mat_power = function(A, n){
  3. Apower=A
  4. for (i in 2:n) Apower= Apower %*% A
  5. return(Apower)
  6. }
  7. P=matrix(c(0.95,0.05,0.03,0.97),nrow=2,byrow=T) # 人口迁移的转移矩阵
  8. P_star=mat_power(P,300) # 计算稳态转移矩阵
  9. round(eigen(t(P))$values,2) # 求特征值
  10. ev=eigen(t(P))$vectors # 求左特征向量
  11. x=ev[,1]/sum(ev[,1]) # 将特征值为1的特征向量正规化
  12. # 比较三种稳态人口比例
  13. x
  14. x%*%P
  15. P_star[1,]

2.6 宏观经济模型

  1. c=0.9; beta=0.5
  2. K=matrix(c(c,c,beta*(c-1),beta*c),nrow=2,byrow=T)
  3. eigen(K)
  4. C0=100; I0=1000
  5. v=c(C0,I0+beta*C0)
  6. solve(diag(2)-K)%*%v
添加新批注
在作者公开此批注前,只有你和作者可见。
回复批注