主要内容

이번역페이지는최신내용을담고있지않습니다。최신내용을영문으로보려면여기를클릭하십시오。

선형회귀

데이터준비하기

회귀피팅을시작하려면피팅함수에필요한형식으로데이터를준비해야합니다。모든회귀기법은배열X의입력데이터와별도의벡터y의응답변수데이터로시작시작,테이블또는dataset형형TBL.의입력데이터와TBL.에열로포함된응답변수데이터로시작합니다。입력데이터의각행은하나의관측값을나타냅니다。각열은하나의예측변수를나타냅니다。

테이블또는数据集형배열TBL.에대해서는다음과같이'responsevar'이름 - 값쌍을사용하여하여응답변수를。

mdl = fitlm(tbl,'responsevar''血压');

응답변수는기본적으로마지막열입니다。

숫자로된범주형예측변수를사용할수있습니다。범주형예측변수는수있는값이몇가지로로고정되어있는변수변수변수변수변수

  • 숫자형배열X에대해서는'分类'이름 - 값쌍을사용하여범주형예측변수를。예를들어,6개예측변수중에서예측변수23.이범주형임을나타내려면다음과이하십시오。

    mdl = fitlm (X, y,'分类',[2,3]);%或同等mdl = fitlm (X, y,'分类',逻辑([0 1 1 0 0]));
  • 테이블또는数据集형배열TBL.에대해피팅함수는다음다음이터형이범주형이범주형이라고가정합니다。

    • 논리형벡터

    • 分类형형.

    • 문자형배열

    • 字符串형배열

    숫자형예측변수가범주형임을나타내려는경우'分类'이름 - 값값사용용。

누락된숫자형데이터는으로나타냅니다。누락된다른데이터형의의이터를를缺少群体价值항목을참조하십시오。

입력데이터와와응답응답변수변수이터터dataset형형사용

Excel®스프레드시트에서dataset형형을생성하려면다음과같이같。

ds = dataset(“XLSFile”'hospital.xls'......'readobsnames',真的);

같작업변수에서dataSet형배열을생성하려면다음과이하십시오。

加载Carsmall.DS =数据集(MPG,重量);ds.year =分类(model_year);

입력데이터와응답변수데이터에테이블사용

Excel銇같시트에서테이블에무료와이하십시오。

tbl =可读取的('hospital.xls'......“ReadRowNames”,真的);

이블공간변수에서테이블에에무료다이다。

加载Carsmall.TBL =表(MPG,重量);tbl.year =分类(model_year);

입력입력이터에에숫자형,응답응답변수이터에숫자형벡터사용

같를들어,작업공간변수에서숫자형배열을하려면다음과같이하십시오。

加载Carsmall.x = [重量马力圆柱体model_year];y = mpg;

Excel銇같銇銇銇銇銇같銇庇护

[x,xnames] = xlsread('hospital.xls');y = x(:,4);%反应Y是收缩压x(:,4)= [];从X矩阵中去掉y

性别와같이숫자형이아닌항목은X에에않습니다。

피팅방법선택하기

무료와이파에피팅하는방법으로는에이세가지가있습니다。

최소제곱피팅

Fitlm.을사용하여데이터에에대한모델의최소제곱을생성할수수제곱을을생성할수수이방법은은모델의형식형식확실히알고있으며주로모델의모수찾아야하는가장장적합이방법은몇가지모델모델을탐색하려는경우에유용유용몇가지도움이되는기법이있기는해도이방법해도이방법에서는으로데이터를를하여이상를검토이상값을을삭제해야(품질품질을검토하고하고피팅된조정조정항목참조)。

로버스트피팅

抢劫案이름——값쌍과함께Fitlm.을사용하여이상값의영향을거의받지않는모델을생성할수있습니다。로버스트피팅은이상값을수동으로삭제해야하는문제를없애줍니다。그러나一步은로버스트피팅과함께동작하지않습니다。즉,로버스트피팅을사용하는경우적합한모델에대한단계적탐색을수행할수없습니다。

단계적피팅

stepwiselm을사용하여하여모델을찾고모수를모델에피팅수수stepwiselm은상수모델과같은특정에서시작되며,더이상향상향상되지않을때최대일치(贪婪)방식으로매번최적의을선택하여한에에을을을가하거나하거나뺍니다추추。단계적피팅을사용관련하여있는있는항만갖는적합모델을찾을수수

결과는시작하는모델에따라달라집니다。일반적으로,상수모델로시작하면작은모델이생성됩니다。더많은항으로시작하면더복잡하지만평균제곱오차가더작은모델이생성될수있습니다。比较大而小的逐步型号항목을참조하십시오。

로버스트옵션은단계적피팅과함께사용할수없습니다。따라서단계적피팅을수행한후모델에이상값이있는지검토하십시오(품질품질을검토하고하고피팅된조정조정항목참조)。

특정특정모델또는모델모델범위선택

선형회귀모델을지정하는방법으로는여러가지가있습니다。가장간편한방법을사용하십시오。

Fitlm.의경우,지정하는모델사양이바로피팅모델이됩니다。모델사양을지정하지않을경우디폴트값은'线性'입니다。

stepwiselm이시작모델이시작경우경우모델사양이시작시작이됩니다。여기서단계적절차를거쳐향상을시도합니다。모델사양을을지정지정하지않을경우디폴트시작모델“不变”이며,디폴트상한모델은'互动'입니다。이름 - 값쌍을사용하여하여상한모델을변경할수수수

참고

모델모델을선택할할수있는다른도있습니다(예:套索lassoglm.sequentialfs또는plsregress사용)。

간략한이름

이름 모델유형
“不变” 모델모델에하나의(절편)항항있습니다。
'线性' 각예측변수에대해모델하나의의항과여러이있습니다。
'互动' 이여러,서로다른예측변수쌍모든(즉,제곱항제외)이있습니다。
'purequadratic' 항모델하나의절편항과일차항및제곱이있습니다。
'二次' 모델에하나의절편항과여러일차,항상호작용,제곱항이있습니다。
'Poly.ijk' 모델이첫번째예측변수에차수一世까지까지의모든항을을포함하고두번째예측변수에에j까지의모든모든항을을하는식으로진행진행되는다항식다항식숫자0.부터9.까지사용하십시오。예를들어,'poly2111'은상수항과모든일차항및곱셈항을가지며,예측변수1의제곱항도포함합니다。

예를들어,행렬예측변수와함께Fitlm.이하십시오사용용하여상호작용작용모델지정지정하려면상호모델모델지정하려면하려면하려면지정지정지정하려면하려면하려면하려면지정을

mdl = fitlm (X, y,'互动');

stepwiselm과예측변수로구성된테이블또는dataset형형TBL.을사용하여모델을지정하며하며,이때상수상수모델에서시작하고을선형모델로둔다둔다고해해해해해해해보겠습니다해해해해TBL.에서에서변수가세번째열에있다고간주간주합니다。

mdl2 = stepwiselm(tbl,“不变”......'上''线性''responsevar'3);

항행렬

항행렬T.는모델의항을지정하는t×(p + 1)행렬입니다。여기t서는항개수이고,p는예측변수개수이며,+ 1은응답변수에해당합니다。T(i,j)의값은항一世에포함된변수j의의입니다。

예예를,3개의예측변수x1x2x3과응답변수yx1x2x3y의순서로포함하는입력값이있다고가정하겠습니다。T.의각행은하나의항을나타냅니다。

  • [0 0 0 0]- 상수항또는절편

  • [0 1 0 0]-x2또는X1 ^0 * x2^1 * x3^0

  • [1 0 1 0]-x1 * x3

  • [2 0 0 0]-x1 ^ 2

  • [0 1 2 0]-x2 * (x3 ^ 2)

각항의끝에있는0.은응답변수를나타냅니다。일반적으로항행렬에서0으로구성된열벡터는변수의위치를나타냅니다。0.을포함시켜야합니다。

공식

모델사양의의식은다음다음의문자형벡터벡터또는형스칼라스칼라

'y条款'

  • y는응답변수이름입니다。

  • 条款는다음을포함합니다。

    • 변수이름.

    • +(다음변수를포함함)

    • -(다음변수를제외함)

    • (상호작용,즉항의곱을정의함)

    • *(상호상호작용과모든낮은낮은차수항을정의)

    • ^(예측변수를거듭제곱함,이는*를를반복하는것과동일동일,따라서^은낮은차수항도포함함)

    • ()(항을그룹화함)

공식에는기본적으로상수항(절편)이포함되어있습니다。모델모델에서상수항을을제외공식공식-1을을시키십시오。

예제:

'y ~ x1 + x2 + x3'3개는변수가이며절편이있는선형모델입니다。
'y ~ x1 + x2 + x3 - 1'은변수가3개이며절편이없는선형모델입니다。
'y〜x1 + x2 + x3 + x2 ^ 2'3개은변수가이며절편과x2 ^ 2항이있는있는입니다。
'y〜x1 + x2 ^ 2 + x3'는앞의예제와합니다합니다。x2 ^ 2x2항을포함하기때문입니다。
'y ~ x1 + x2 + x3 + x1:x2'x1 * x2항을포함합니다。
'y ~ x1*x2 + x3'는앞의예제와합니다합니다。X1 *x2 = X1 + x2 + X1:x2이기때문입니다。
'y〜x1 * x2 * x3 - x1:x2:x3'는는삼원상호작용작용을제외x1x2x3간의모든상호작용을가집니다。
y ~ x1*(x2 + x3 + x4)'는모든일차항과함께x1과다른변수각각에대한곱가집니다。

예를들어,행렬예측변수와함께Fitlm.이하십시오사용용하여상호작용작용모델지정지정하려면상호모델모델지정하려면하려면하려면지정지정지정하려면하려면하려면하려면지정을

mdl = fitlm (X, y,'y〜x1 * x2 * x3  -  x1:x2:x3');

stepwiselm과예측변수로구성된테이블또는dataset형형TBL.을사용하여모델을지정하며하며,이때상수상수모델에서시작하고을선형모델로둔다둔다고해해해해해해해보겠습니다해해해해TBL.의응답변수가'是'가로명명예측변수가x1的“x2”“x3”으로명명되었다고가정합니다。

mdl2 = stepwiselm(tbl,'y〜1''上''y ~ x1 + x2 + x3');

모델을데이터에에피팅

피팅에사용할수가장있는있는적인적인수는같습니다。

  • Fitlm.에서에서로버스트회귀를를설정하려는'抢劫'이름 - 값값'在'으로설정합니다。

  • stepwiselm에서에서적절한상한모델모델을지정합니다(예:'上''线性'로설정)。

  • 'pationalvars'이름 - 값쌍을사용하여하여범주형인변수를。열번호로구성된벡터벡터제공제공합니다(예:예측변수16.이범주형임범주형임을지정[1 6]제공)。또는,해당변수가범주형임범주형임나타내는1무료와이터사용용데이터데데에이터열열형벡터를제공제공제공제공제공제공제공7개의예측변수가있고있고변수16.이범주형인경우逻辑([1,0,0,0,0,1,0])을을합니다。

  • 테이블또는dataset형형경우'responsevar'이름——값쌍을사용하여응답변수를지정합니다。디폴트값은배열의마지막열입니다。

예를들면다음과같습니다。

mdl = fitlm (X, y,'线性'......'抢劫''在''pationalvars'3);mdl2 = stepwiselm(tbl,“不变”......'responsevar''mpg''上''二次');

품질품질을검토하고하고피팅된조정조정

모델을피팅한후결과를검토하고조정합니다。

모델표시

선형회귀모델은모델이름을을입력DISP(MDL)을입력하는경우여러진단을표시합니다。이표시는피팅된모델이데이터를를적절히나타내는지여부를확인수있는있는기본적정보가지지를제공제공인정보몇지를제공제공인정보몇지를를제공

예를들어5개예측변수중2개가없고절편항이없는상태로생성된데이터에선형모델을피팅해보겠습니다。

x = randn(100,5);y = x * [1; 0; 3; 0; -1] + RANDN(100,1);mdl = fitlm(x,y)
MDL =线性回归模型:Y〜1 + x1 + x2 + x3 + x4 + x5估计系数:估计系数pvalue _________ ________________________0.75264 0.45355 x3 2.8965 0.099879 29 1.1117E-48 x 4 0.04531 0.045311 0.04531 0.11708 0.41831 0.11708 0.41831 0.67667 0.67667 0.67667 0.67667 0.67667 0.67667 0.67667 0.67667 x 5 -0.97667 x 5 -0.97667 x 5 -4504 3.5930-13观察数:100,误差自由度:94根均匀误差:0.972 R线:0.93,调整0.93R-Squared:0.926 F统计与常数型号:248,P值= 1.5E-52

이경우다음과같은결과가생성됩니다。

  • 估计열에각계수에대해된값이표시됩니다。이러한값값은실제[0; 1; 0; 3; 0; -1]에상당히가깝습니다。

  • 계수추정값에대한표준오차열이있습니다。

  • 예측변수1,3,5에대해보고된pValue(정규오차가정에따라T.통계량(Tstat.)에서에서됨)가매우작습니다。이3개의예측변수가응답변수데이터y를생성하는데사용되었습니다。

  • (拦截)x2x4pValue0.01가보다훨씬더큽니다。이3개의예측변수가응답변수데이터y를를하는데사용되지되지。

  • R. 2 ,수정된 R. 2 F통계량이표시됩니다。

분산분석(方差分析)

피팅된모델모델의품질품질검토하려면분산분석표분석표를참조참조예를들어,5개예측변수를갖는선형모델Anova.를사용해보겠습니다。

TBL = ANOVA(MDL)
TBL =6×5表SumSq DF MeanSq F pValue _________ _______ _______ __________ x1 106.62 1 106.62 112.96 8.5494e-18 x2 0.53464 1 0.53464 0.56646 0.45355 x3 793.74 1 793.74 840.98 1.1117e-48 x4 0.16515 1 0.16515 0.17498 0.67667 x5 67.398 1 67.398 71.41 3.593e-13错误88.719 94 0.94382

이테이블은은모델표시화면과다소다른결과를제공제공이테이블은x2x4의효과가유의미하지않다는않다는것명확히줍니다줍니다줍니다。목표에따라모델에서x2x4를제거해보십시오。

진단플롯

진단플롯은이상값을식별하고모델또는피팅에존재하는다른문제를살펴보는데도움이됩니다。예를들어,Carsmall.데이터를불러오고英里/加仑모델을气缸(범주형)와重量에대한함수로만들어보겠습니다。

加载Carsmall.TBL =桌子(重量,MPG,圆柱体);tbl.cylinders =分类(tbl.cylinders);mdl = fitlm(tbl,'MPG〜气缸*重量+重量^ 2');

데이터와와모델에대한지렛대값플롯을생성합니다

plotDiagnostics (mdl)

높은지렛대값을갖는몇의의점이있습니다。그러나,이플롯은높은지렛대값갖는점이이값값인지여부를표시하지않습니다하지하지하지하지

쿡의거리(厨师距离)가큰점을찾습니다。

plotDiagnostics (mdl'cookd'

쿡의거리가큰큰이하나하나。이점을식별한후모델모델제거합니다합니다。데이터커서를사용하여이상값을클릭이를식별하거나에이프로그래밍프로그래밍으로이를식별할수있습니다。

[〜,larg] = max(mdl.diagnostics.cooksdistance);mdl2 = fitlm(tbl,'MPG〜气缸*重量+重量^ 2''排除',洛格);

잔차 - 훈련데이터에에대한모델

모델이나데이터에서에서,이상값값또는상관관계를파악데이되는잔차플롯이여러여러플롯。가장단순단순한잔차플롯은잔차범위와빈도를보여주는히스토그램플롯과,잔차의분포가분산이일치하는하는정규분포와어떻게비교를보여주는주는플롯플롯

다음과다음과이잔차를검토합니다。

plotresids(MDL)

12보다큰관측값이잠재적인이상값입니다。

plotresids(MDL,'可能性'

이플롯에도두개의잠재인이상이상이보입니다。그외에는,확률플롯이거의직선처럼보입니다。즉,정규분포된잔차에적절한피팅피팅이라고할수있습니다。

다음과같이두개의이상값을식별하여데이터에서에서제거할수수

概述=查找(mdl.residuals.raw> 12)
outl =2×190 97.

이상값값을제거하기위해排除이름——값쌍을사용합니다。

mdl3 = fitlm(tbl,'MPG〜气缸*重量+重量^ 2''排除',概略);

mdl2의잔차플롯을검토합니다。

plotresids(MDL3)

새잔차플롯은특별히눈에띄는문제없이상당히대칭적인것처럼보입니다。그러나,잔차사이에일부계열상관이있을수있습니다。새플롯을생성하여이러한효과가존재하는지확인합니다。

plotresids(MDL3,'滞后'

산점도플롯을보면다른두사분면보다오른쪽위사분면과왼쪽아래사분면에더많은십자표식이있습니다。이는잔차사이에양의계열상관이있음을나타냅니다。

또다른잠재인인는큰관측값에대해가큰큰에발생합니다。현재현재에이러한문제가있는지있는지합니다。

plotresids(MDL3,“安装”

피팅된값이클수록클수록가커지는경향이있습니다。아마도모델오차가측정값에비례할것입니다。

예측예측변수효과를를파악할있는있는

이예제에서는이용가능한다양한플롯을사용하여예측변수변수변수회귀모델미치는를파악하는방법보여줍니다。

응답변수에대한슬라이스플롯을플롯을검토。이플롯은각각예측변수변수의효과를개별적으로표시

plotSlice (mdl)

개별예측변수값을끌어서놓을수있습니다。이러한예측예측변수값은파란색세로파선으로표시되어되어또한동시신뢰신뢰한계와와신뢰한계중에서에서선택할수도이는빨간색빨간색곡선파선파선으로되어되어되어되어되어

효과플롯을사용하여하여변수변수변수변수응답변수미치는효과를나타다른보기를표시표시。

栅格缺点(MDL)

이플롯은.重量를약2500에서4732로변경하면英里/加仑가30(상부파란색원의위치)정도정도한다는것을보여。또한,기통개수를8에서4로변경하면英里/加仑가10(하부파란색원)정도상승한다는것도줍니다。파란색가로선은이러한예측예측값에대한대한을을예측예측은한변수가변경될때다른예측변수에평균을구하는방식으로으로얻습니다얻습니다얻습니다얻습니다。두예측변수간에상관가있는이러한경우에는결과를할때주의해야합니다。

한예측변수가변경될때다른예측변수대한평균을구하는방법으로이에에대한효과를확인하는대신대신작용플롯에서결합상호작용검토

plotinteraction(mdl,'重量'“气缸”

상호작용플롯은한예측가고정된상태에서다른예측를를할때이것것효과를줍니다줍니다것것효과보여줍니다줍니다。이경우,이플롯은훨씬더많은를제공합니다。예를들어,여기서는는적으로가벼운자동차(重量= 1795)에서기통수를줄이면주행거리가늘어나지만,상대적으로무거운자동차(重量= 4732)에서기통수를줄이면주행거리가줄어든다는것을보여줍니다。

이상호작용에대해더자세히살펴보려면예측값이포함된상호작용플롯을살펴보십시오。이플롯은한예측변수를고정된상태로유지하면서다른예측변수를변경하여이것이미치는효과를곡선으로플로팅합니다。고정된여러개수의기통에대한상호작용을살펴보십시오。

plotinteraction(mdl,“气缸”'重量''预测'

이제,고정고정된여러무게수준과의상호작용을

plotinteraction(mdl,'重量'“气缸”'预测'

항효과를파악할수있는플롯

이예제에서는이용가능한다양플롯을사용하여회귀회귀모델에서각항효과를파악하는하는방법을보여보여보여

추가변수로重量^ 2.을사용하여하여가변수플롯을생성합니다。

plotAdded (mdl“体重^ 2”

이플롯은.重量^ 2.英里/加仑를모두重量^ 2.이아닌아닌다른항에에피팅결과를보여plotAdded를사용하는이유는重量^ 2.을을가하여하여에서가로얻게얻게되는사항이무엇인지파악하기위해서입니다。이러한점들점들에대한직선직선피팅계수는전체모델모델重量^ 2.에대한계수입니다。重量^ 2.이블에서는테이블표시에서할수이유의성유의성값(pValue< 0.05)을약간초과합니다。플롯에서도이를확인할수있습니다。신뢰한계가가로선(상수y)을포함하지못하는것으로이므로기울기가0인모델은이터와일치않습니다。

모델전체에대한추가변수변수생성합니다。

plotadded(mdl)

이이전체적으로매우유의미,신뢰신뢰내에가로선을포함하기는어렵습니다。직선의기울기는기울기는최적피팅방향으로놓여있는예측변수에피팅의기울기기울기기울기피팅의기울기기울기즉,계수벡터의노름(符号)입니다。

모델변경하기

모델을변경하는방법으로는두가지가있습니다。

stepwiselm을사용하여하여모델모델을생성한,서로서로다른상부또는하부하부모델지정하는경우에一步을적용할수있습니다。抢劫案를사용하여모델을피팅하는경우에는一步을적용할수없습니다。

carbig데이터에서가져온주행주행거리에대한선형모델을들어보겠습니다

加载carbigTBL =表(加速,位移,马力,重量,MPG);mdl = fitlm(tbl,'线性''responsevar''mpg'
mdl =线性回归模型:MPG ~ 1 +加速度+位移+马力+重量Estimate SE tStat pValue __________ __________ ________ __________ (Intercept) 45.251 2.456 18.424 7.0721e-55加速度-0.023148 0.1256 -0.1843 0.5388位移-0.0060009 0.0067093 -0.89441 0.37166马力-0.043608 0.016573 -2.6312 0.008849重量-0.0052805 0.00081085 -6.5123 2.3025e-10观测次数:392,误差自由度:387均方根误差:4.25 r平方:0.707,调整r平方:0.704 F-statistic vs. constant model: 233, p-value = 9.63 -102

최대10개스텝까지步을사용하여모델을개선봅니다봅니다。

mdl1 =步骤(mdl,'nsteps',10)
1.添加位移:马力,FSTAT = 87.4802,pvalue = 7.05273e-19
MDL1 =线性回归型号:MPG〜1 +加速+重量+位移*马力估计系数:估算系数PVALUE __________ ________________ ____________8.0623 9.5014E-15马力-0.24313 0.026068 -9重量-0.0014367 0.00084041 -1.7095 0.08041 -1.7095 0.088166位移:马力0.00054236 5.7987E-05 9.3531 7.3531 7.0527E -19观察数:392,误差自由度:386根均匀误差:3.84 R线:0.761,调整R线:0.758 F统计与常数型号:246,P值= 1.32E-117

단단한번의의변경후一步이중지중지。

모델을단순화하기위해MDL1에서加速항과重量항을제거합니다。

mdl2 = removeterms(mdl1,'加速+重量'
MDL2 =线性回归模型:MPG〜1 +位移*马力估计系数:估计SE TSTAT PVALUE __________ ______________________________1.0201C-121位移-0.098046 0.3203817 -14.01.306682.8024E-28位移:马力0.00058278 5.193E-05 11.222 1.6816E-25观测数量:392,误差自由度:388根均匀误差:3.94 R线:0.747,调整R线:0.745 F统计与常数型号:381,p值= 3e-115

MDL2.位移马力만사용하며,调整的R角메트릭의MDL1만큼데이터에거의적합피팅을가집니다。

새데이터에대한응답변수를예측하거나시뮬레이션하기

linearmodel.객체는새데이터에에대한응답변수를예측하거나하거나션하는가지지(预测Feval.随机的)를제공합니다。

预测

预测함수를사용하여하여예측하고예측값에대한을을

carbig데이터를불러오고加速位移马力重量예측변수에대한응답변수英里/加仑의디폴트선형모델을만듭니다。

加载carbigX = [加速,位移,马力,重量];mdl = fitlm(x,mpg);

최솟값,평균값,최댓값에서예측변수로구성된3행배열을생성합니다。X에는값이몇개포함되어있으므로意思함수에대해'omitnan'옵션을옵션을하십시오。함수와最大限度함수함수는기본적적으로계산값을제외합니다。

xnew = [min(x);均值(x,'omitnan'); max(x)];

모델응답변수의예측값이예측값에대한신뢰구간을구합니다。

[NewMPG, NewMPGCI] =预测(mdl,Xnew)
newmpg =3×134.1345 23.4078 4.7751
newmpgci =3×231.6115 36.6575 22.9859 23.8298 0.6134 8.9367

평균응답변수의신뢰한계가최소응답변수또는최대응답변수의신뢰한계보다좁습니다。

Feval.

Feval.함수를사용하여응답변수를예측합니다。테이블또는dataset형배열에서모델을생성경우경우경우하는,Feval.预测보다응답변수를예측하는데더편리한경우가많습니다。새예측변수데이지가생겼을때테이블이나행렬을행렬을만들지Feval.로전달할수있습니다。그러나,Feval.은신뢰한계를제공않습니다않습니다。

carbig데이터세트세트를불러오고예측예측加速位移马力重量에대한응답변수英里/加仑의디폴트선형모델을만듭니다。

加载carbigTBL =表(加速,位移,马力,重量,MPG);mdl = fitlm(tbl,'线性''responsevar''mpg');

예측변수의의평균값값대한모델응답변수변수를예측예측

newmpg = feval(mdl,均值(加速度,'omitnan'),意思(位移,'omitnan'),意思(马力,'omitnan'),意思(体重,'omitnan')))
newmpg = 23.4078.

随机的

随机的함수를사용하여응답변수를시뮬레이션시뮬레。随机的함수는새랜덤응답변수값을시뮬레이션합니다。이값은평균예측값에훈련데이터와동일한분산을갖는확률교란을더한값과같습니다。

carbig데이터를불러오고加速位移马力重量예측변수에대한응답변수英里/加仑의디폴트선형모델을만듭니다。

加载carbigX = [加速,位移,马力,重量];mdl = fitlm(x,mpg);

최솟값,평균값,최댓값에서예측변수로구성된3행배열을생성합니다。

xnew = [min(x);均值(x,'omitnan'); max(x)];

00

RNG('默认'重复性的%newmpg =随机(mdl,xnew)
newmpg =3×136.4178 31.1958 -4.8176

英里/加仑의음수값합당하지않아보이므로두두번더더을시도

newmpg =随机(mdl,xnew)
newmpg =3×137.7959 24.7615 -0.7783
newmpg =随机(mdl,xnew)
newmpg =3×132.2931 24.8628 19.9715

확실히,XNew.의세번째(최댓값)행에대한예측은신뢰할없습니다。

피팅된모델공유하기

아래의MDL.과같은선형회귀모델이있다있다가정하겠습니다。

加载carbigTBL =表(加速,位移,马力,重量,MPG);mdl = fitlm(tbl,'线性''responsevar''mpg');

다음과같은방법으로이모델을다른사람들과공유수있습니다。

  • 모델의정보를표시합니다。

MDL.
mdl =线性回归模型:MPG ~ 1 +加速度+位移+马力+重量Estimate SE tStat pValue __________ __________ ________ __________ (Intercept) 45.251 2.456 18.424 7.0721e-55加速度-0.023148 0.1256 -0.1843 0.5388位移-0.0060009 0.0067093 -0.89441 0.37166马力-0.043608 0.016573 -2.6312 0.008849重量-0.0052805 0.00081085 -6.5123 2.3025e-10观测次数:392,误差自由度:387均方根误差:4.25 r平方:0.707,调整r平方:0.704 F-statistic vs. constant model: 233, p-value = 9.63 -102
  • 모델정의와계수를합니다합니다。

mdl.formula.
ANS = MPG〜1 +加速+位移+马力+重量
MDL.Coeffitynames.
ans =.1x5细胞列1到4 {'(Intercept)'} {'Acceleration'} {'Displacement'}{'马力'}第5列{'Weight'}
mdl.cofficients.Estimate
ans =.5×145.2511 -0.0231 -0.0060 -0.0436 -0.0053

참고항목

|||||||

관련항목