이페이지의최신내용은아직번역되지않았습니다。최신내용은영문으로볼수있습니다。

fittype

곡선과곡면피팅을위한피팅유형

설명

예제

aFittype= fittype(libraryModelName)libraryModelName으로지정된모델에대한fittype객체aFittype을만듭니다。

예제

aFittype= fittype(表达式)은MATLAB®표현식으로지정된모델에대한피팅유형을만듭니다。

예제

aFittype= fittype(表达式,名称,值)는하나이상의名称,值쌍의인수로지정된추가옵션을사용하여피팅유형을생성합니다。

예제

aFittype= fittype(linearModelTerms)linearModelTerms에정의된항을갖는사용자지정선형모델에대한피팅유형을만듭니다。항은문자형벡터로구성된셀형배열표현식으로지정합니다。

예제

aFittype= fittype(linearModelTerms,名称,值)는하나이상의名称,值쌍의인수로지정된추가옵션을사용하여피팅유형을생성합니다。

예제

aFittype= fittype(anonymousFunction)anonymousFunction으로지정된모델에대한피팅유형을만듭니다。

예제

aFittype= fittype(anonymousFunction,名称,值)는하나이상의名称,值쌍의인수로지정된추가옵션을사용하여피팅유형을생성합니다。

예제

모두축소

라이브러리모델이름을지정하여피팅유형을생성합니다。

3차다항식라이브러리모델에대한fittype객체를생성합니다。

f = fittype (“poly3”)
f =线性模型Poly3: f(p1,p2,p3,p4,x) = p1*x^3 + p2*x^2 + p3*x + p4

라이브러리모델rat33(분자와분모모두3차로이루어진유리모델)에대해피팅유형을생성합니다。

f = fittype (“rat33”)
f =一般模型Rat33: f(p1,p2,p3,p4,q1,q2,q3,x) = (p1*x^3 + p2*x^2 + p3*x + p4) / (x^3 + q1*x^2 + q2*x + q3)

라이브러리모델이름목록은libraryModelName을참조하십시오。

선형피팅알고리즘을사용하려면항으로구성된셀형배열을지정하십시오。

a*x + b*sin(x) + c라는fittype에입력해야하는선형모델항을식별합니다。모델은一个,b,c에서선형입니다。모델에는x,的sin(x),1(C = C * 1이므로)이라는3개항이있습니다。이모델을지정하려면항으로구성된셀형배열LinearModelTerms = {“x”,“sin (x)”, ' 1 '}을사용하십시오。

선형모델항으로구성된셀형배열을fittype에대한입력값으로사용합니다。

英尺= fittype({“x”,“sin (x)”,' 1 '})
ft =线性模型:ft(a,b,c,x) = a*x + b*sin(x) + c

a * cos (x) + b에대한선형모델피팅유형을만듭니다。

ft2 = fittype ({“cos (x)”,' 1 '})
ft2 =线性模型:ft2(a,b,x) = a*cos(x) + b

피팅유형을다시만들고계수이름을지정합니다。

发生= fittype ({“cos (x)”,' 1 '},“系数”,{“a1”,“a2”})
立方英尺=线性模型:立方英尺(A1,A2,X)= A1 * cos(x)的+ A2

문제종속적인파라미터와독립변수를지정하여사용자지정비선형모델에대한피팅유형을만듭니다。

n을문제종속적인파라미터로지정하고u를독립변수로지정하여사용자지정비선형모델에대한피팅유형을만듭니다。

g = fittype (“* u + b * exp (n * u)”,“问题”,'N',“独立”,“u”)
g =一般模型:g(a,b,n,u) = a*u+b*exp(n*u)

时间을독립변수로지정하여사용자지정비선형모델에대한피팅유형을만듭니다。

g = fittype (“* ^ 2 + b *时间+ c”,“独立”,“时间”,“依赖”,“高度”)
克=一般模型:G(A,B,C,时间)= A *时间^ 2 + b *的时间+ C

일부데이터에대한로그피팅에대해피팅유형을만들고,그피팅유형을사용하여피팅을만들고,피팅을플로팅합니다。

X = linspace(1100);Y = 5 + 7 *日志(X);myfittype = fittype(“a + b *日志(x)”,“依赖”,{“y”},“独立”,{“x”},“系数”,{“一个”,“b”})
myfittype =一般模型:myfittype(a,b,x) = a + b*log(x)
myfit =适合(x, y, myfittype)
警告:未提供起点,选择随机起点。
myfit =一般模型:myfit(x) = a + b*log(x)系数(95%置信限):a = 5 (5,5) b = 7 (7,7)
情节(myfit,X,Y)

모델표현식에MATLAB명령을지정할수있으며00파일로도지정할수있습니다。

파일에함수를정의하고이를사용하여피팅유형을만든후곡선을피팅합니다。

함수를MATLAB파일에정의합니다。

函数y = piecewiseLine (x, a, b, c, d, k)由两部分组成的线那不是连续的。y = 0(大小(x));这个例子包括一个for循环和if语句纯粹用于举例目的。i = 1:长度(x)如果x(i) < k, y(i) = a + b。* *(我);其他的Y(I)= C + d * X(I)。;结束结束结束

파일을저장합니다。

일부데이터를정의하고,함수piecewiseLine을지정하여피팅유형을만들고,피팅유형英国《金融时报》를사용하여피팅을만들고,결과를플로팅합니다。

x = [0.81; 0.91; 0.13; 0.91; 0.63; 0.098; 0.28; 0.55;0.96;0.96;0.16;0.97;0.96);y = [0.17; 0.12; 0.16; 0.0035; 0.37; 0.082; 0.34; 0.56;0.15; -0.046; 0.17; -0.091; -0.071];英尺= fittype('piecewiseLine(x, a, b, c, d, k)'f = fit(x, y, ft,曾经繁荣的,[1,0,1,0,0.5])曲线图(F,X,Y)

선형피팅알고리즘을사용하려면항으로구성된셀형배열을지정하십시오。

a*x + b*sin(x) + c라는fittype에입력해야하는선형모델항을식별합니다。모델은一个,b,c에서선형입니다。모델에는x,的sin(x),1(C = C * 1이므로)이라는3개항이있습니다。이모델을지정하려면항으로구성된셀형배열LinearModelTerms = {“x”,“sin (x)”, ' 1 '}을사용하십시오。

선형모델항으로구성된셀형배열을fittype에대한입력값으로사용합니다。

英尺= fittype({“x”,“sin (x)”,' 1 '})
ft =线性模型:ft(a,b,c,x) = a*x + b*sin(x) + c

a * cos (x) + b에대한선형모델피팅유형을만듭니다。

ft2 = fittype ({“cos (x)”,' 1 '})
ft2 =线性模型:ft2(a,b,x) = a*cos(x) + b

피팅유형을다시만들고계수이름을지정합니다。

发生= fittype ({“cos (x)”,' 1 '},“系数”,{“a1”,“a2”})
立方英尺=线性模型:立方英尺(A1,A2,X)= A1 * cos(x)的+ A2

익명함수를사용하여피팅유형을만듭니다。

g = fittype(@(a, b, c, x) a*x。^ 2 + b * x + c)

익명함수를사용하여피팅유형을만들고독립파라미터와종속파라미터를지정합니다。

g = fittype (@ (a, b, c, d, x, y) * x ^ 2 + b * x + c * exp (——(y-d)。^ 2),“独立”,{“x”,“y”},“依赖”,“z”);

익명함수를사용하여곡면에대한피팅유형을만들고독립파라미터와종속파라미터,그리고나중에适合을호출할때지정할문제파라미터를지정합니다。

g = fittype(@(a,b,c,d,x,y) a*x。^ 2 + b * x + c * exp (- (y-d)。^ 2),“问题”,{“c”,' d '},“独立”,{“x”,“y”},“依赖”,“z”);

익명함수를사용하여작업공간데이터를fittype함수와适合함수로전달합니다。

年代형태곡선을만들고플로팅합니다。나중단계에서는일부데이터를피팅하기위해이곡선을늘리고이동할것입니다。

%断点。x = (0:0.1:1)。';曲线的百分比高度在断点。(y = 0;0;0.04;0.1;0.2;0.5;0.8;0.9;0.96;1; 1];%绘制s形曲线。xi = linspace(0,1,241);plot(xi, interp1(xs, ys, xi,“pchip”),“线宽”2) hold住情节(x, y,'O',“MarkerFaceColor”,“r”)举行标题S曲线

곡선절점(xs)과절점에서의곡선높이(y)에대한값을작업공간에서가져와익명함수를사용하여피팅유형을만듭니다。계수는b와(밑변)h(높이)입니다。

英尺= fittype(@(B,H,X)interp1(XS,B + H * YS,X,“pchip”))

샘플계수값으로밑변b = 1.1과높이h = -0.8을지정하여fittype을플로팅합니다。

plot(xi, ft(1.1, -0.8, xi),“线宽”2)标题'Fittype, b=1.1, h=-0.8'

데이터를불러오고,작업공간값을사용해만든피팅유형英国《金融时报》를사용하여피팅합니다。

加载一些数据xdata = [0.012; 0.054; 0.13; 0.16; 0.31; 0.34; 0.47; 0.53; 0.53;0.57;0.78;0.79;0.93);ydata = [0.78; 0.87; 1; 1.1; 0.96; 0.88; 0.56; 0.5; 0.5; 0.5; 0.63;0.62;0.39);根据数据拟合曲线f = fit(xdata, ydata, ft,“开始”, [0,1])%情节适合地块(F,XDATA,YDATA)称号“安装s曲线”

이예제에서는익명함수와문제파라미터를사용하는것과익명함수와작업공간변수를사용하는것간의차이를보여줍니다。

데이터를불러오고,문제파라미터와함께익명함수를사용하여곡선에대한피팅유형을만들고,문제파라미터를지정하여适合을호출합니다。

加载一些数据。XDATA = [0.098; 0.13; 0.16; 0.28; 0.55; 0.63; 0.81; 0.91; 0.91;0.96;0.96;0.96;0.97);ydata = [0.52; 0.53; 0.53; 0.48; 0.33; 0.36; 0.39; 0.28; 0.28;0.21;0.21;0.21;0.2);创建一个具有问题参数的fittype。G = fittype(@(A,B,C,X)的a * X ^ 2 + B * X + C,“问题”,“c”)%检查系数。观察c不为系数。coeffnames(克)%检查参数。注意,c是一个参数。argnames (g)调用fit并指定c的值。f1 = fit(xdata, ydata, g,“问题”0,曾经繁荣的, [1,2])注意:在调用中指定要适合的起始点避免关于随机起点的警告消息并确保结果的重复性。再次调用fit并指定不同的c值,去买一件新的。f2 =拟合(xdata, ydata, g,“问题”,1“开始”, [1,2])%的阴谋的结果。观察指定的c常数不要做一个很合适的。plot(f1, xdata, ydata)保持情节(f2,“b”)举行

위예제를수정하여문제파라미터를사용하는대신변수에대한작업공간값을사용하여동일한피팅을만듭니다。동일한데이터를사용하여,변수c에대한작업공간값과함께익명함수를사용하여곡선에대한피팅유형을만듭니다。

%从参数列表中删除℃。试一试g = fittype(@(a,b,x) a*x。^ 2 + b * x + c)e disp (e。消息)结束%观察错误,因为现在c是未定义的。%定义c并创建fittype:c = 0;g1 = fittype(@(a,b,x) a*x)^ 2 + b * x + c)调用fit(现在不需要指定问题参数)。F1 =拟合(XDATA,YDATA,G1,曾经繁荣的, [1,2])请注意,此f1与上面的f1相同。要更改c的值,请重新创建fittype。c = 1;g2 = fittype(@(a,b,x) a*x。^ 2 + b * x + c)%使用c = 1f2 = fit(xdata, ydata, g2,曾经繁荣的, [1,2])%注意,这f2是与上述相同的F2。%绘制结果plot(f1, xdata, ydata)保持情节(f2,“b”)举行

입력인수

모두축소

피팅할라이브러리모델로,문자형벡터로지정됩니다。다음표에는몇가지일반적인예가나와있습니다。

라이브러리모델이름

설명

“poly1”

1차다항식곡선

'poly11'

1차다항식곡면

“poly2”

2차다항식곡선

“linearinterp”

조각별선형보간

'cubicinterp'

조각3차별보간

“smoothingspline”

평활화스플라인(곡선)

“洛斯”

국소선형회귀(곡면)

라이브러리모델이름목록은모델이름과방정식항목을참조하십시오。

예:“poly2”

데이터형:烧焦

피팅할모델로,문자형벡터로지정됩니다。MATLAB명령이나00파일로도지정할수있습니다。파일로정의된곡선피팅하기항목을참조하십시오。

데이터형:烧焦

피팅할모델로,문자형벡터로구성된셀형배열로지정됩니다。문자형벡터표현식으로모델항을지정합니다。항에대한표현식에는계수를포함하지마십시오。선형모델항항목을참조하십시오。

데이터형:细胞

피팅할모델로,익명함수로지정됩니다。자세한내용은익명함수의입력순서항목을참조하십시오。

데이터형:烧焦

이름——값쌍의인수

선택적으로名称,值인수가쉼표로구분되어지정됩니다。여기서的名字은인수이름이고价值는대응값입니다。的名字은따옴표안에표시해야합니다。名1,值1,...,NameN,值N과같이여러개의이름——값쌍의인수를어떤순서로든지정할수있습니다。

예:'系数',{ 'A1', 'A2'}

계수이름으로,“系数”와함께문자형벡터가쉼표로구분되어지정되거나,여러이름에대해서는문자형벡터로구성된셀형배열이쉼표로구분되어지정됩니다。다중문자기호이름을사용할수있습니다。,j,π,INF,,每股收益는이름으로사용할수없습니다。

데이터형:烧焦|细胞

종속변수(응답변수)이름으로,“依赖”와함께문자형벡터가쉼표로구분되어지정됩니다。종속변수를지정하지않으면함수는y가종속변수라고간주합니다。

데이터형:烧焦

독립변수(응답변수)이름으로,“独立”와함께문자형벡터또는문자형벡터로구성된셀형배열이쉼표로구분되어지정됩니다。독립변수를지정하지않으면함수는x가독립변수라고간주합니다。

데이터형:烧焦

피팅옵션으로,“选项”와함께fitoptions객체의이름이쉼표로구분되어지정됩니다。

문제종속적(고정)파라미터이름으로,“问题”과함께문자형벡터또는문자형벡터로구성된셀형배열(문제종속적상수하나당하나의요소를가짐)이쉼표로구분되어지정됩니다。

데이터형:烧焦|细胞

출력인수

모두축소

피팅할모델로,fittype으로반환됩니다。fittype은모델을설명하는정보를캡슐화합니다。피팅을만들려면데이터,fittype,그리고(선택적으로)fitoptions와배제규칙이필요합니다。fittype适合함수에대한입력값으로사용할수있습니다。

세부정보

모두축소

종속변수와독립변수

어느변수가종속변수이고어느변수가독립변수인지어떻게구분할수있습니까?

종속변수,독립변수,계수를구분하려면다음방정식을살펴보십시오。

y = f ( x ) = 一个 + ( b * x ) + ( c * x 2 )

  • Ÿ는종속변수입니다。

  • x는독립변수입니다。

  • a, b, c는계수입니다。

독립(“独立”)변수는사용자가제어하는것입니다。종속(“依赖”)변수는사용자가구하여얻고자하는것입니다。즉,독립변수에종속적입니다。계수(“系数”)는피팅알고리즘이추정하는파라미터입니다。

예를들어,인구조사데이터가있는경우연도는아무것에도종속되지않으므로독립변수입니다。인구는그값이조사된연도에종속적이므로종속변수입니다。증가율과같은파라미터가모델에포함되어있는경우,피팅알고리즘이이를추정하므로이파라미터는계수(“系数”)중하나입니다。

fittype함수는변수이름에대해피팅유형표현식입력값을검색하여입력인수를확인합니다。fittypex가독립변수이고y가종속변수이고다른모든변수는모델의계수라고간주합니다。변수가존재하지않으면x가사용됩니다。

익명함수의입력순서

피팅유형표현식입력값이익명함수인경우입력값의순서가정확해야합니다。입력순서는fittype함수가추정할계수가무엇이고,문제종속적인파라미터가무엇이고,독립변수가무엇인지확인할수있도록해줍니다。

익명함수에대한입력인수의순서는다음과같아야합니다。

fcn = @(系数,问题参数,x,y)表达式
최소하나의계수가필요합니다。문제파라미터와y는선택적입니다。마지막인수xy는독립변수를나타냅니다。곡선의경우x만필요하고,곡면의경우xy가필요합니다。x및/또는y를사용하여독립변수의이름을지정하고싶지않다면“独立”인수이름——값쌍을사용하여다른이름을지정할수있습니다。그러나어떤이름을선택하든이인수는익명함수에대한마지막인수가되어야합니다。

익명함수를사용하면fittype함수와适合함수로다른데이터를보다쉽게전달할수있습니다。

  1. 익명함수와작업공간의변수값(c)을사용하여피팅유형을만듭니다。

    c = 1;g = fittype(@(a, b, x) a*x。^ 2 + b * x + c)
  2. fittype함수는피팅유형을만들때작업공간에있는변수값을사용할수있습니다。작업공간에서새데이터를전달하려면피팅유형을다시생성하십시오。예를들면다음과같습니다。

    c = 5c的变化值。g = fittype(@(a, b, x) a*x。^ 2 + b * x + c)
  3. 여기서피팅유형을만들때c의값은고정되어있습니다。适合을호출하는시점에c의값을지정하려면문제파라미터를사용하면됩니다。예를들어,c = 2를사용하여피팅을만들고c = 3을사용하여새피팅을만듭니다。

    g = fittype(@(a,b,x) a*x.^2+b*x+c,“问题”,“c”) f1 = fit(xdata, ydata, g,“问题”, 2) f2 = fit(xdata, ydata, g,“问题”,3)

선형모델항

선형모델항은어떻게정의해야합니까?

선형피팅알고리즘을사용하려면linearModelTerms를항으로구성된셀형배열로지정하십시오。

afittype = fittype ({expr1,,exprn})
문자형벡터expr2,…, exprn의표현식처럼모델항을지정합니다。항에대한표현식에는계수를포함하지마십시오。상수항이있으면셀형배열의해당위치에서' 1 '로표현하십시오。

선형모델이다음형식을갖고

coeff1 * term1 + coeff2 * term2 + coeff3 * term3 +
字词1,字词2등에계수가나타나지않도록지정하려면다음과같이expr의셀에각항이계수없이지정된셀형배열을사용하십시오。
LinearModelTerms = {“term1”,“term2”,“term3”,}

예를들어,다음모델은

a*x + b*sin(x) + c
一个,b,c에서선형입니다。이모델에는x,的sin(x),1(C = C * 1이므로)이라는3개항이있으며따라서expr은다음과같습니다。
LinearModelTerms = {“x”,“sin (x)”,' 1 '}

곡선피팅앱에서선형피팅(线性拟合)모델유형을참조하십시오。

알고리즘

피팅유형표현식입력값이문자형벡터이거나익명함수이면이툴박스는비선형피팅알고리즘을사용하여모델을데이터에피팅합니다。

피팅유형표현식입력값이항으로구성된셀형배열이면이툴박스는선형피팅알고리즘을사용하여모델을데이터에피팅합니다。

참고항목

함수

R2006a이전에개발됨