このページの翻訳は最新ではありません。ここをクリックして、英語の最新版を参照してください。
曲線または曲面でデータを近似する
データを読み込み2次曲線で変数cdate
および流行
を近似し、近似とデータをプロットします。
负载人口普查;f =适合(cdate、流行,“poly2”)
系数(有95%置信限):p1 = 0.006541 (0.006124, 0.006958) p2 = -23.51 (-25.09, -21.93) p3 = 2.113e+04 (1.964e+04, 2.262 2e+04)
情节(f cdate流行)
ライブラリモデル名の一覧については,菲特型
を参照してください。
データを読み込み、x
について2次,y
について3次の多項式曲面で近似します。近似とデータをプロットします。
负载因特网科幻小说=适合(x, y, z,‘poly23’)
线性模型Poly23: sf(x,y) = p00 + p10*x + p01*y + p20*x^2 + p11*x*y + p02*y^2 + p21*x^2*y + p12*x*y^2 + p03*y^3P00 = 1.118 (0.9149, 1.321) p10 = -0.0002941 (-0.000502, -8.623e-05) p01 = 1.533 (0.7032, 2.364) p20 = -1.966e-08 (-0.0001009, - 0.0007863) p11 = 0.0003427 (-0.0001009, - 0.0007863) p02 = -6.951 (-8.421, -5.481) p21 = 9.563e-08 (-0.0007082, -0.0001721) p12 = -0.0004401 (-0.0007082, -0.0001721) p03 = 4.999 (4.082, 5.917)
情节(科幻,x, y, z)
因特网
データを読み込み,MATLAB®テーブルに変換します。
负载因特网T =表(x, y, z);
テーブル内の変数を関数适合
への入力として指定し,近似をプロットします。
f = ((T。x,T.y],T.z,“linearinterp”);情节(f, [T。x,T.y], T.z )
データを読み込んでプロットし、関数菲特型
およびfitoptions
を使用して近似オプションと近似タイプを作成してから,近似を作成してプロットします。
census.mat
のデータを読み込んでプロットします。
负载人口普查绘图(cdate、pop、,“哦”)
カスタム非線形モデル について近似オプション オブジェクトと近似タイプを作成します。ここで、一个とbは係数,nは問題依存のパラメーターです。
fo = fitoptions (“方法”,“NonlinearLeastSquares”,...“更低”(0, 0),...“上”(正无穷,max (cdate)),...曾经繁荣的,[1]);ft=fittype(“a*(x-b)^n”,“问题”,“不”,“选项”,fo);
近似オプションとn= 2 の値を使用して、データを近似します。
[curve2, gof2] =适合(cdate、流行、英国《金融时报》,“问题”,2)
系数(95%置信限):a = 0.006092 (0.005743, 0.006441) b = 1789(1784,1793)问题参数:n = 2
gof2 =结构体字段:sse:246.1543平方米:0.9980 dfe:19调整平方米:0.9979 rmse:3.5994
近似オプションとn= 3の値を使用して,データを近似します。
[curve3, gof3] =适合(cdate、流行、英国《金融时报》,“问题”,3)
系数(有95%置信限):a = 1.359e-05 (1.245e-05, 1.474e-05) b = 1725 (1718,1731
gof3 =结构体字段:adrsquare: 0.9980 rmse: 3.4944
近似結果をデータと共にプロットします。
持有在情节(curve2“我是)情节(curve3“c”)传奇(“数据”,‘n=2’,‘n=3’)举行从
データを読み込み,データのセンタリングとスケーリング(规范化
) およびロバスト近似オプションを指定して 3.次多項式で近似し、プロットします。
负载人口普查;f =适合(cdate、流行,“poly3”,“正常化”,“上”,“稳健”,“Bisquare”)
f=线性模型Poly3:f(x)=p1*x^3+p2*x^2+p3*x+p4,其中x通过平均值1890和标准62.05系数(95%置信限)进行归一化:p1=-0.4619(-1.895,0.9707)p2=25.01(23.79,26.22)p3=77.03(74.37,79.7)p4=62.81(61.26,64.37)
情节(f cdate流行)
ファイルに関数を定義し,それを使用して近似タイプを作成し曲線で近似します。
関数をMATLAB®ファイルに定義します。
函数y = piecewiseLine (x, a, b, c, d, k)PIECEWISELINE由两件组成的线那不是连续的。y = 0(大小(x));%此示例包括for循环和if语句%纯粹是为了举例。为i = 1:长度(x)如果X (i) < k, y(i) = a + b.* X (i);其他的y(i)=c+d*x(i);结束结束结束
ファイルを保存します。
データを定義し、関数分段线
を指定して近似タイプを作成します。その近似タイプ英国《金融时报》
を使用して近似を作成し、結果をプロットします。
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];ft=fittype('分段线(x,a,b,c,d,k)') f = fit(x, y, ft,)曾经繁荣的[1,0,1,0,0.5])图(f,x,y)
データを読み込み,排除する点を指定してカスタム式で近似します。結果をプロットします。
データを読み込み、カスタム式と開始点を定義します。
[x,y]=钛;高斯序列n=(a * exp() -(取向/ c) ^ 2) + d '
gaussEqn = ' * exp(((取向)/ c) ^ 2) + d '
起点=[1.590010.6]
曾经繁荣=1×41.5000 900.0000 10.0000 0.6000
カスタム式と開始点を使用して 2.つの近似を作成します。インデックス ベクトルと式を使用して 2.組の異なる排除点を定義します。排除
を使用して近似から外れ値を削除します。
f1 =适合(x, y, gaussEqn,“开始”,起点,“排除”, [1 10 25])
f1=一般模型:f1(x)=a*exp(-(x-b)/c^2)+d系数(具有95%置信限):a=1.493(1.432,1.554)b=897.4(896.5898.3)c=27.9(26.55,29.25)d=0.6519(0.6367,0.6672)
f2 =适合(x, y, gaussEqn,“开始”,起点,“排除”, x < 800)
系数(95%置信限):a = 1.494 (1.41, 1.578) b = 897.4 (896.2, 898.7) c = 28.15 (26.22,30.09) d = 0.6466 (0.6169, 0.6764)
両方の近似をプロットします。
情节(f1, x, y)标题('拟合数据点1,10和25排除')
图绘制(f2, x, y)标题('拟合的数据点排除,如x < 800')
排除する点を関数符合への入力として指定する前に,それらの点を変数として定義できます。以下の手順では,前述の例の近似を再作成し,排除した点をデータと近似と共にプロットします。
データを読み込み、カスタム式と開始点を定義します。
[x,y]=钛;高斯序列n=(a * exp() -(取向/ c) ^ 2) + d '
gaussEqn = ' * exp(((取向)/ c) ^ 2) + d '
起点=[1.590010.6]
曾经繁荣=1×41.5000 900.0000 10.0000 0.6000
インデックスベクトルと式を使用して,排除する2組の点を定義します。
excepde1 = [1 10 25];Exclude2 = x < 800;
カスタム式,開始点および2組の異なる排除点を使用して2つの近似を作成します。
f1 =适合(x, y, gaussEqn,“开始”,起点,“排除”, exclude1);f2 =适合(x, y, gaussEqn,“开始”,起点,“排除”,不包括2);
両方の近似をプロットし、排除したデータを強調表示します。
情节(f1, x, y, exclude1)标题('拟合数据点1,10和25排除')
图;情节(f2, x, y, exclude2)标题('拟合的数据点排除,如x < 800')
排除点を使用する曲面近似の例として,曲面データを読み込み,排除するデータを指定して近似を作成しプロットします。
负载因特网= [x y],z,‘poly23’,“排除”, [1 10 25]);f = [x y],z,‘poly23’,“排除”, z > 1);图(f1, [x y], z,“排除”, [1 10 25]);标题('拟合数据点1,10和25排除')
图2(f2,[x y],z,“排除”,z>1);标题('拟合排除的数据点z > 1')
データを読み込み,変数月
および压力
を使用して平滑化スプライン曲線で近似し,適合度情報と出力構造体を返します。データに対する近似と残差をプロットします。
负载enso[曲线、优点、输出]=拟合(月份、压力、,“平滑样条线”);情节(压力曲线、月);包含(“月”);ylabel (“压力”);
xデータ (月
) に対する残差をプロットします。
Plot (curve, month, pressure,“残差”)包含(“月”) ylabel (“残差”)
输出
構造体のデータを使用して、Yデータ (压力
) に対する残差をプロットします。
情节(压力、output.residuals、“。”)包含(“压力”) ylabel (“残差”)
指数関数的トレンドのデータを生成し,指数モデルの曲線近似ライブラリにある最初の方程式(単項指数関数)を使用してそのデータを近似します。結果をプロットします。
x =(0:0.2:5)”;Y = 2*exp(-0.2*x) + 0.5*randn(size(x))); / /f =适合(x, y,“exp1”);情节(f, x, y)
無名関数を使用すると,他のデータを関数适合
に簡単に渡せます。
データを読み込み、無名関数を定義する前にEmax
を1
に設定します。
数据= importdata (“OpioidHypnoticSynergy.txt”);异丙酚= data.data (: 1);Remifentanil = data.data (:, 2);痛觉计= data.data (: 3);Emax = 1;
モデル方程式を無名関数として定義します。
效应=@(IC50A,IC50B,α,n,x,y)...*(x/IC50A + y/IC50B + α *(x/IC50A))....* (y/IC50B))。^n ./(x/IC50A + y/IC50B +...alpha*(x/IC50A). *(y/IC50B))。^ n + 1);
無名関数效果
を関数适合
への入力として使用し,結果をプロットします。
alometryeeffect = fit([异丙酚,瑞芬太尼],alometryeeffect,...曾经繁荣的, [2, 10, 1,0.8],...“更低”,[-Inf,-Inf,-5,-Inf],...“稳健”,“守护神”) plot(algometryeeffect,[异丙酚,瑞芬太尼],Algometry)
無名関数の使用例と他の近似用カスタムモデルの詳細については,関数菲特型
を参照してください。
プロパティ上
、降低
、曾经繁荣
については,係数のエントリ順序を確認する必要があります。
近似タイプを作成します。
ft=fittype('b*x^2+c*x+a');
関数科夫名称
を使用して係数名と順序を取得します。
coeffnames(英尺)
ans =3 x1细胞{a} {b} {' c '}
これは、菲特型
を使用して英国《金融时报》
を作成するときに使用する式の係数の順序とは異なることに注意してください。
データを読み込み、近似を作成し、開始点を設定します。
负载ensofit(月,压力,英国《金融时报》,曾经繁荣的, 1、3、5)
ans=一般模型:ans(x)=b*x^2+c*x+a系数(具有95%置信限):a=10.94(9.362,12.52)b=0.0001677(-7.985e-05,0.0004153)c=-0.0224(-0.06559,0.02079)
これにより,一个= 1
、b = 3
、c = 5
のように、係数に初期値が代入されます。
または,近似オプションを取得し,開始点と下限を設定してから,新しいオプションを使用して再近似することもできます。
选择= fitoptions(英尺)
options = Normalize: 'off' Exclude: [] Weights: [] Method: 'NonlinearLeastSquares' Robust: 'off' StartPoint: [1x0 double] Lower: [1x0 double] Upper: [1x0 double] Algorithm: ' confidence - region ' DiffMinChange: 1.0000e-08 DiffMaxChange: 0.1000 Display: 'Notify' MaxFunEvals: 600 MaxIter: 400 TolFun: 1.0000e-06 TolX: 1.0000e-06
选项。StartPoint = [10 1 3];选项。降低=[0 -Inf 0]; fit(month,pressure,ft,options)
a = 10.23 (9.448, 11.01) b = 4.335e-05 (-1.82e-05, 0.0001049) c = 5.523e-12(固定在边界)
x
- - - - - -近似対象のデータ近似対象のデータ。1列 (曲線近似) または 2 列 (曲面近似) の行列として指定します。tablename.varname
を使用して MATLABテーブル内の変数を指定できます。Inf
または南
を含めることはできません。複素数データの実数部のみが近似に使用されます。
例:x
例:[x,y]
データ型:双重的
y
- - - - - -近似対象のデータ近似対象のデータ。x
と同じ行数の列ベクトルとして指定します。tablename.varname
を使用して MATLABテーブル内の変数を指定できます。Inf
または南
を含めることはできません。複素数データの実数部のみが近似に使用されます。
データが列ベクトル形式でない場合は、prepareCurveData
またはprepareSurfaceData
を使用します。
データ型:双重的
z
- - - - - -近似対象のデータ近似対象のデータ。x
と同じ行数の列ベクトルとして指定します。tablename.varname
を使用して MATLABテーブル内の変数を指定できます。Inf
または南
を含めることはできません。複素数データの実数部のみが近似に使用されます。
データが列ベクトル形式でない場合は、prepareSurfaceData
を使用します。たとえば,3 つの行列がある場合やデータがグリッド ベクトル形式である場合が該当します。ただし、length(X) = n, length(Y) = m
および尺寸(Z)=[m,n]
とします。
データ型:双重的
菲特型
- - - - - -近似に使用するモデル タイプ菲特型
近似に使用するモデル タイプ。ライブラリ モデル名の文字ベクトル、MATLAB式、線形モデル項の 单间牢房配列、無名関数または関数菲特型
により構成された菲特型
として指定します。菲特型
への有効な最初の入力のいずれかを适合
への入力として使用できます。
ライブラリモデル名の一覧については,モデルの名前と方程式を参照してください。次の表にいくつかの一般的な例を示します。
ライブラリ モデル名 |
説明 |
---|---|
|
線形多項式曲線 |
|
線形多項式曲面 |
|
2 次多項式曲線 |
|
区分的線形内挿 |
|
区分的 3.次内挿 |
|
平滑化スプライン (曲線) |
|
局所線形回帰 (曲面) |
カスタム モデルで近似するには、MATLAB式、線形モデル項の 单间牢房配列または無名関数を使用するか、関数菲特型
で菲特型
を作成し,これを菲特型
引数として使用します。例については,無名関数を使用したカスタムモデルによる近似を参照してください。線形モデル項の例については、関数菲特型
を参照してください。
例:“poly2”
fitOptions
- - - - - -アルゴリズム オプションfitoptions
関数fitoptions
を使用して構成されたアルゴリズムオプションです。近似オプションにおける名前と値のペア引数の指定に代わるものです。
引数名称,值
のオプションのコンマ区切りペアを指定します。名称
は引数名、价值
は対応する値です。名称
は引用符で囲まなければなりません。名称1,值1,…,名称,值
のように,複数の名前と値のペアの引数を任意の順番で指定できます。
‘下’、[0,0]、‘上’、[Inf,max(x)]、‘起点’、[1]
は近似法,範囲および開始点を指定します。
“正常化”
- - - - - -データのセンタリングとスケーリングを行うオプション“关”
(既定値) |“上”
データのセンタリングとスケーリングを行うオプション。“正常化”
と“上”
または“关”
で構成されるコンマ区切りのペアとして指定します。
データ型:烧焦
“问题”
- - - - - -問題依存の定数への代入値問題依存の定数への代入値。“问题”
と,問題依存の定数ごとに1つの要素をもつ细胞配列で構成されるコンマ区切りのペアとして指定します。詳細は,菲特型
を参照してください。
データ型:细胞
|双重的
“SmoothingParam”
- - - - - -平滑化パラメーター平滑化パラメーター。“SmoothingParam”
と0と1の間のスカラー値で構成されるコンマ区切りペアとして指定します。既定値はデータセットによって異なります。近似タイプがsmoothingspline
の場合のみ使用できます。
データ型:双重的
“跨越”
- - - - - -局所回帰で使用するデータ点の割合局所回帰で使用するデータ点の割合。“跨越”
と0と1の間のスカラー値で構成されるコンマ区切りペアとして指定します。近似タイプが洛维斯
または黄土
の場合のみ使用できます。
データ型:双重的
“稳健”
- - - - - -ロバスト線形最小二乗近似法“关”
(既定値) |守护神
|Bisquare
ロバスト線形最小二乗近似法。“稳健”
と次のいずれかの値で構成されるコンマ区切りのペアとして指定します。
“守护神”
— 最小絶対残差法を指定する。
“Bisquare”
——二重平方重み法を指定する。
近似タイプ方法
がLinearLeastSquares
またはNonlinearLeastSquares
のときに使用できます。
データ型:烧焦
“更低”
- - - - - -近似される係数の下限近似される係数の下限。“更低”
とベクトルで構成されるコンマ区切りのペアとして指定します。既定値は空のベクトルであり,近似が下限によって制約されないことを示します。範囲を指定する場合,ベクトルの長さは係数の数と等しくなければなりません。ベクトル値の係数のエントリ順序を確認するには,関数科夫名称
を使用します。例については,開始点と範囲を設定するための係数順序の確認を参照してください。個々の制約なしの下限は负
によって指定できます。
方法
がLinearLeastSquares
またはNonlinearLeastSquares
のときに使用できます。
データ型:双重的
“上”
- - - - - -近似される係数の上限近似される係数の上限。“上”
とベクトルで構成されるコンマ区切りのペアとして指定します。既定値は空のベクトルであり,近似が上限によって制約されないことを示します。範囲を指定する場合,ベクトルの長さは係数の数と等しくなければなりません。ベクトル値の係数のエントリ順序を確認するには,関数科夫名称
を使用します。例については,開始点と範囲を設定するための係数順序の確認を参照してください。個々の制約なしの上限は+Inf
によって指定できます。
方法
がLinearLeastSquares
またはNonlinearLeastSquares
のときに使用できます。
データ型:逻辑
曾经繁荣的
- - - - - -係数の初期値係数の初期値。曾经繁荣的
とベクトルから構成されるコンマ区切りのペアとして指定します。ベクトル値の係数のエントリ順序を確認するには,関数科夫名称
を使用します。例については,開始点と範囲を設定するための係数順序の確認を参照してください。
開始点(既定値は空のベクトル)を関数适合
に渡さない場合,一部のライブラリモデルの開始点は経験則的に決定されます。有理モデル,ワイブルモデルおよびすべてのカスタム非線形モデルでは,係数の既定の初期値が区間(0,1)からランダムかつ一様に選択されます。その結果,同じデータとモデルを使用する複数の近似から異なる近似係数が得られる可能性があります。これを回避するには,fitoptions
オブジェクトまたは曾经繁荣
のベクトル値を使用して係数の初期値を指定します。
方法
がNonlinearLeastSquares
のときに使用できます。
データ型:双重的
“算法”
- - - - - -近似手順で使用するアルゴリズム近似手順で使用するアルゴリズム。“算法”
と,“Levenberg Marquardt”
または“信任区”
で構成されるコンマ区切りのペアとして指定します。
方法
がNonlinearLeastSquares
のときに使用できます。
データ型:烧焦
“DiffMaxChange”
- - - - - -有限差分勾配の係数の最大変化量有限差分勾配の係数の最大変化量。“DiffMaxChange”
とスカラーで構成されるコンマ区切りのペアとして指定します。
方法
がNonlinearLeastSquares
のときに使用できます。
データ型:双重的
“DiffMinChange”
- - - - - -有限差分勾配の係数の最小変化量有限差分勾配の係数の最小変化量。“DiffMinChange”
とスカラーで構成されるコンマ区切りのペアとして指定します。
方法
がNonlinearLeastSquares
のときに使用できます。
データ型:双重的
“显示”
- - - - - -コマンドウィンドウの表示オプション“通知”
(既定値) |“决赛”
|“通路”
|“关”
コマンド ウィンドウの表示オプション。“显示”
と次のいずれかのオプションで構成されるコンマ区切りのペアとして指定します。
“通知”
— 近似が収束しない場合にのみ出力を表示する。
“决赛”
— 最終出力のみを表示する。
“通路”
— 各反復の出力を表示する。
“关”
——出力を表示しない。
方法
がNonlinearLeastSquares
のときに使用できます。
データ型:烧焦
“MaxFunEvals”
- - - - - -許容されるモデルの最大評価回数600
(既定値)許容されるモデルの最大評価回数。“MaxFunEvals”
とスカラーで構成されるコンマ区切りのペアとして指定します。
方法
がNonlinearLeastSquares
のときに使用できます。
データ型:双重的
“MaxIter”
- - - - - -近似の許容される最大反復回数400
(既定値)近似の許容される最大反復回数。“MaxIter”
とスカラーで構成されるコンマ区切りのペアとして指定します。
方法
がNonlinearLeastSquares
のときに使用できます。
データ型:双重的
“托尔芬”
- - - - - -モデル値の終了許容誤差モデル値の終了許容誤差。“托尔芬”
とスカラーで構成されるコンマ区切りのペアとして指定します。
方法
がNonlinearLeastSquares
のときに使用できます。
データ型:双重的
“TolX”
- - - - - -係数値の終了許容誤差係数値の終了許容誤差。“TolX”
とスカラーで構成されるコンマ区切りのペアとして指定します。
方法
がNonlinearLeastSquares
のときに使用できます。
データ型:双重的
gof
——適合度の統計量gof
構造体適合度の統計量。次の表のフィールドを含むgof
構造体として返されます。
フィールド |
値 |
---|---|
|
誤差の二乗和 |
|
決定係数 |
|
誤差の自由度 |
|
自由度調整済みの決定係数 |
|
平方根平均二乗誤差 (標準誤差) |
输出
— 近似アルゴリズム情報输出
構造体近似アルゴリズム情報。近似アルゴリズムに関連する情報を含む输出
構造体として返されます。
フィールドはアルゴリズムによって異なります。たとえば,非線形最小二乗アルゴリズムの输出
構造体には次の表に示すフィールドが含まれています。
フィールド |
値 |
---|---|
|
観測値(応答値)の数 |
|
近似対象の未知パラメーター (係数) の数 |
|
残差のベクトル |
|
ヤコビ行列 |
|
アルゴリズムの終了条件を記述。正のフラグは許容誤差内で収束したことを示します。ゼロのフラグは関数評価または反復の最大回数を越えたことを示します。負のフラグはアルゴリズムが解に収束しなかったことを示します。 |
|
反復回数 |
|
関数評価の回数 |
|
1次の最適性の尺度(勾配成分の最大絶対値) |
|
採用された近似アルゴリズム |
次の MATLABコマンドに対応するリンクがクリックされました。
コマンドを MATLABコマンド ウィンドウに入力して実行してください。网状物ブラウザーは MATLABコマンドをサポートしていません。
你也可以从以下列表中选择一个网站:
选择中国网站(中文或英文)以获得最佳网站性能。其他MathWorks国家站点没有针对您所在位置的访问进行优化。