第12周数学建模作业

第12周数学建模作业

1、考察温度x对产量y的影响,测得下列10组数据:

温度(℃) 20 25 30 35 40 45 50 55 60 65
产量(kg) 13.2 15.1 16.4 17.1 17.9 18.7 19.6 21.2 22.5 24.3

求y关于x的线性回归方程,检验回归效果是否显著,并预测x=42℃时产量的估值.

Matlab代码:


x = [20, 25, 30, 35, 40, 45, 50, 55, 60, 65]; 
y = [13.2, 15.1, 16.4, 17.1, 17.9, 18.7, 19.6, 21.2, 22.5, 24.3];


p = polyfit(x, y, 1);
y_hat = p(1) + p(2)*x;

[r,p] = corrcoef(y, y_hat);
r = r(2,1);
pvalue = p(2,1);

if pvalue < 0.05
    disp('回归效果显著');
else
    disp('回归效果不显著');
end

y_pred = p(1) + p(2)*42;
disp(['当x=42时,预测产量为:', num2str(y_pred), 'kg']);

2、某零件上有一段曲线,为了在程序控制机床上加工这一零件,需要求这段曲线的解析表达式,在曲线横坐标xi处测得纵坐标yi共11对数据如下:

xi 0 2 4 6 8 10 12 14 16 18 20
yi 0.6 2.0 4.4 7.5 11.8 17.1 23.3 31.2 39.6 49.7 61.7

求这段曲线的纵坐标y关于横坐标x的二次多项式回归方程.

Matlab代码:


x = [0, 2, 4, 6, 8, 10, 12, 14, 16, 18, 20];
y = [0.6, 2.0, 4.4, 7.5, 11.8, 17.1, 23.3, 31.2, 39.6, 49.7, 61.7];

p = polyfit(x, y, 2);
y_hat = p(1)*x.^2 + p(2)*x + p(3);

[r,p] = corrcoef(y, y_hat);
r = r(2,1);
pvalue = p(2,1);

if pvalue < 0.05
    disp('回归效果显著');
else
    disp('回归效果不显著');
end

disp(['回归方程为: y = ', num2str(p(1)), '*x^2 + ', num2str(p(2)), '*x + ', num2str(p(3))]);

3、混凝土的抗压强度随养护时间的延长而增加,现将一批混凝土作成12个试块,记录了养护日期x(日)及抗压强度y(kg/cm2)的数据:

养护时间x 2 3 4 5 7 9 12 14 17 21 28 56
抗压强度y 35 42 47 53 59 65 68 73 76 82 86 99

试用2种方法(转化为线性回归、非线性回归)求第12周数学建模作业_第1张图片型回归方程.

Matlab代码:


x = [2, 3, 4, 5, 7, 9, 12, 14, 17, 21, 28, 56];
y = [35, 42, 47, 53, 59, 65, 68, 73, 76, 82, 86, 99];


x_log = log(x);
p = polyfit(x_log, y, 1);
a = p(1);
b = p(2);

disp(['回归方程为: y = ', num2str(a), ' + ', num2str(b), '*ln(x)']);

x = [2, 3, 4, 5, 7, 9, 12, 14, 17, 21, 28, 56];
y = [35, 42, 47, 53, 59, 65, 68, 73, 76, 82, 86, 99];


fun = @(p,x)p(1) + p(2)*log(x);
p0 = [0, 0];
p = lsqcurvefit(fun, p0, x, y);
a = p(1);
b = p(2);


disp(['回归方程为: y = ', num2str(a), ' + ', num2str(b), '*ln(x)']);

4、

第12周数学建模作业_第2张图片

第12周数学建模作业_第3张图片

数据详见Excel文件week12test4.xls

假设2030年时,x1=5000,x2=1000,x3=3000,x4=1000。

请完成以下任务:

(1)计算财政收入和其它变量之间的相关系数,建立多元线性回归模型,并给出2030年财政收入的预测值和预测区间;

(2)假设财政收入和其它变量的关系为y=ax1+bx2+cx3+dx4,建立多元非线性回归模型,并给出2030年财政收入的预测值和预测区间。

Matlab代码:

clear;
clc;
data=xlsread('week12test4.xls','Sheet1','B2:F32');
R=corrcoef(data(:,1:5));
R(1,:);
y=data(:,1);
x=data(:,2:5);
X=[ones(length(y),1),x];
[b,bint,r,rint,stats]=regress(y,X);
x0=[1 5000 1000 3000 1000]';
y0=sum(x0.*b)

fun=@(beta,x) beta(1)*x(:,1)+beta(2)*x(:,2)+beta(3)*x(:,3)+beta(4)*x(:,4);
[beta,r,J]=nlinfit(x,y,fun,[1 1 1 1]);
x1=[5000 1000 3000 1000];
y1=sum(x1.*beta)
[y2,delta]=nlpredci(fun,x1,beta,r,J)

3)*x(:,3)+beta(4)*x(:,4);
[beta,r,J]=nlinfit(x,y,fun,[1 1 1 1]);
x1=[5000 1000 3000 1000];
y1=sum(x1.*beta)
[y2,delta]=nlpredci(fun,x1,beta,r,J)


 

 

你可能感兴趣的:(数学建模)