第五讲 线性代数基础与应用
樊潇彦 复旦大学经济学院 经济数学
1. 课件下载
Ch05.pdf2152.6kB
2. 程序附录
setwd("D:\\...")
2.1 矩阵运算的基本命令
A = matrix(1:9,nrow=3) # 建立矩阵apply(A,1,sum) # 行加总apply(A,2,sum) # 列加总a=A[,1]; t(a)%*%a # 欧氏范数I=diag(3) # 3维单位阵A_T = t(A) # 转置B=A+I # 加法solve(B) # 求逆A%*%B # 矩阵乘法
2.2 求解线性方程组:剑桥食谱
A=matrix(c(36,51,13, 52,34,74, 0,7,1.1),nrow=3,byrow=T)b=c(33,45,3)solve(A,b)
2.3 投入-产出表
M=matrix(c(15,20,30, 30,10,45, 20,60,0),nrow=3,byrow=T) # 中间投入矩阵d=c(35,115,70) # 最终需求x=c(100,200,150) # 总产出A=M/matrix(rep(x,each=3),nrow=3) # 直接消耗系数矩阵solve(diag(3)-A)%*%d # 检验最终产出公式solve(diag(3)-A)%*%c(100,200,300) # P185 最终需求变化对总产出的影响
2.4 特征值和特征向量
M=matrix(c(3,1,2,4),nrow=2)lambda=eigen(M)$valueev=eigen(M)$vectorsev[,1]*lambda[1]ev[,2]*lambda[2]
2.5 稳态人口分布
# 自已写一个可以计算矩阵的幂的函数mat_power = function(A, n){ Apower=A for (i in 2:n) Apower= Apower %*% A return(Apower)}P=matrix(c(0.95,0.05,0.03,0.97),nrow=2,byrow=T) # 人口迁移的转移矩阵P_star=mat_power(P,300) # 计算稳态转移矩阵round(eigen(t(P))$values,2) # 求特征值ev=eigen(t(P))$vectors # 求左特征向量x=ev[,1]/sum(ev[,1]) # 将特征值为1的特征向量正规化# 比较三种稳态人口比例x x%*%PP_star[1,]
2.6 宏观经济模型
c=0.9; beta=0.5K=matrix(c(c,c,beta*(c-1),beta*c),nrow=2,byrow=T)eigen(K)C0=100; I0=1000v=c(C0,I0+beta*C0)solve(diag(2)-K)%*%v