运行软件:matlab
估计出租车总数要求:
通过数值模拟来估算出租车的总数,以此来检验5个模型的优劣。首先设定总体的数为x=1000,从总体中随机取n=10个数为一个样本,对每个样本用5个模型分别估计x(估计值记作x’),如此取m=200个样本,计算由m个样本估计的x’的平均值和标准差,以及平均值与真值(1000)之间的误差
五个模型分别为:
代码:
A=randi(1000,200,10);
m(:,1)=mean(A,2);
m(:,2)=median(A,2);
m(:,3)=max(A,[],2);
m(:,4)=min(A,[],2);
x(:,1)=2.*m(:,1);
x(:,2)=2.*m(:,2);
x(:,3)=m(:,3)+m(:,4)-1;
x(:,4)=(1+1/10).*m(:,3)-1;
x(:,5)=(1+1/20).*m(:,3);
p(1,:)=mean(x,1);
p(2,:)=p(1,:)-1000;
p(3,:)=std(x,0,1);
代码解释:
-
随机取样本。使用randi()函数,建立一个200×10的矩阵A,代表200个样本,一个样本10个数据
-
计算样本平均值,中位数,最大值,最小值。m矩阵的第一列存放这两百个样本每个样本的平均值(m(:,1)=mean(A,2)),第二列存放两百个样本每个样本的中位数(m(:,2)=median(A,2)),第三列存放两百个样本每个样本的最大值(m(:,3)=max(A,[],2)),第四列存放两百个样本每个样本的最小值(m(:,4)=min(A,[],2))
-
计算预估值x’。X(:,i)分别存放模型i的预估值,利用五个模型的公式
-
计算每个模型的平均值,平均值误差,标准差。
P(1,:)存放每个模型的平均值(p(1,:)=mean(x,1));
P(2,:)存放每个模型的平均值的误差(p(2,:)=p(1,:)-1000);
p(3,:)存放每个模型的标准差(p(3,:)=std(x,0,1))