fitnlm
Ajustar un modelo de regresión no lineal
Sintaxis
Descripción
ajusta el modelo especificado por mdl = fitnlm(tbl,modelfun,beta0)modelfun a las variables de la tabla o al arreglo de conjuntos de datos tbl y devuelve el modelo no lineal mdl.
fitnlm estima los coeficientes del modelo utilizando un procedimiento iterativo a partir de los valores iniciales en beta0.
ajusta un modelo de regresión no lineal con más opciones especificadas por uno o varios argumentos de par mdl = fitnlm(___,modelfun,beta0,Name,Value)Name,Value.
Ejemplos
Cree un modelo no lineal para el consumo de combustible a partir de los datos de carbig.
Cargue los datos y cree un modelo no lineal.
load carbig tbl = table(Horsepower,Weight,MPG); modelfun = @(b,x)b(1) + b(2)*x(:,1).^b(3) + ... b(4)*x(:,2).^b(5); beta0 = [-50 500 -1 500 -1]; mdl = fitnlm(tbl,modelfun,beta0)
mdl =
Nonlinear regression model:
MPG ~ b1 + b2*Horsepower^b3 + b4*Weight^b5
Estimated Coefficients:
Estimate SE tStat pValue
________ _______ ________ ________
b1 -49.383 119.97 -0.41164 0.68083
b2 376.43 567.05 0.66384 0.50719
b3 -0.78193 0.47168 -1.6578 0.098177
b4 422.37 776.02 0.54428 0.58656
b5 -0.24127 0.48325 -0.49926 0.61788
Number of observations: 392, Error degrees of freedom: 387
Root Mean Squared Error: 3.96
R-Squared: 0.745, Adjusted R-Squared 0.743
F-statistic vs. constant model: 283, p-value = 1.79e-113
Cree un modelo no lineal para el consumo de combustible a partir de los datos de carbig.
Cargue los datos y cree un modelo no lineal.
load carbig X = [Horsepower,Weight]; y = MPG; modelfun = @(b,x)b(1) + b(2)*x(:,1).^b(3) + ... b(4)*x(:,2).^b(5); beta0 = [-50 500 -1 500 -1]; mdl = fitnlm(X,y,modelfun,beta0)
mdl =
Nonlinear regression model:
y ~ b1 + b2*x1^b3 + b4*x2^b5
Estimated Coefficients:
Estimate SE tStat pValue
________ _______ ________ ________
b1 -49.383 119.97 -0.41164 0.68083
b2 376.43 567.05 0.66384 0.50719
b3 -0.78193 0.47168 -1.6578 0.098177
b4 422.37 776.02 0.54428 0.58656
b5 -0.24127 0.48325 -0.49926 0.61788
Number of observations: 392, Error degrees of freedom: 387
Root Mean Squared Error: 3.96
R-Squared: 0.745, Adjusted R-Squared 0.743
F-statistic vs. constant model: 283, p-value = 1.79e-113
Cree un modelo no lineal para el consumo de combustible a partir de los datos de carbig. Mejore la precisión reduciendo la opción TolFun, y observe las iteraciones estableciendo la opción Display.
Cargue los datos y cree un modelo no lineal.
load carbig X = [Horsepower,Weight]; y = MPG; modelfun = @(b,x)b(1) + b(2)*x(:,1).^b(3) + ... b(4)*x(:,2).^b(5); beta0 = [-50 500 -1 500 -1];
Cree opciones para reducir TolFun y mostrar el proceso iterativo, y cree un modelo utilizando esas opciones.
opts = statset('Display','iter','TolFun',1e-10); mdl = fitnlm(X,y,modelfun,beta0,'Options',opts);
Norm of Norm of
Iteration SSE Gradient Step
-----------------------------------------------------------
0 1.82248e+06
1 678600 788810 1691.07
2 616716 6.12739e+06 45.4738
3 249831 3.9532e+06 293.557
4 17675 361544 369.284
5 11746.6 69670.5 169.079
6 7242.22 343738 394.822
7 6250.32 159719 452.941
8 6172.87 91622.9 268.674
9 6077 6957.44 100.208
10 6076.34 6370.39 88.1905
11 6075.75 5199.08 77.9694
12 6075.3 4646.61 69.764
13 6074.91 4235.96 62.9114
14 6074.55 3885.28 57.0647
15 6074.23 3571.1 52.0036
16 6073.93 3286.48 47.5795
17 6073.66 3028.34 43.6844
18 6073.4 2794.31 40.2352
19 6073.17 2582.15 37.1663
20 6072.95 2389.68 34.4243
21 6072.74 2214.84 31.9651
22 6072.55 2055.78 29.7516
23 6072.37 1910.83 27.753
24 6072.21 1778.51 25.9428
25 6072.05 1657.5 24.2986
26 6071.9 1546.65 22.8011
27 6071.76 1444.93 21.4338
28 6071.63 1351.44 20.1822
29 6071.51 1265.39 19.0339
30 6071.39 1186.06 17.978
31 6071.28 1112.83 17.0052
32 6071.17 1045.13 16.107
33 6071.07 982.465 15.2762
34 6070.98 924.389 14.5063
35 6070.89 870.498 13.7916
36 6070.8 820.434 13.127
37 6070.72 773.872 12.5081
38 6070.64 730.521 11.9307
39 6070.57 690.117 11.3914
40 6070.5 652.422 10.887
41 6070.43 617.219 10.4144
42 6070.37 584.315 9.97115
43 6070.31 553.53 9.55489
44 6070.25 524.703 9.1635
45 6070.19 497.686 8.79506
46 6070.14 472.345 8.44785
47 6070.08 448.557 8.12028
48 6070.03 426.21 7.81092
49 6069.99 405.201 7.51845
50 6069.94 385.435 7.2417
51 6069.9 366.825 6.97956
52 6069.85 349.293 6.73104
53 6069.81 332.764 6.49523
54 6069.77 317.171 6.27127
55 6069.74 302.453 6.0584
56 6069.7 288.55 5.85591
57 6069.66 275.411 5.66315
58 6069.63 262.986 5.47949
59 6069.6 251.23 5.3044
60 6069.57 240.1 5.13734
61 6069.54 229.558 4.97784
62 6069.51 219.567 4.82545
63 6069.48 210.094 4.67977
64 6069.45 201.108 4.5404
65 6069.43 192.578 4.407
66 6069.4 184.479 4.27923
67 6069.38 176.785 4.15677
68 6069.35 169.472 4.03935
69 6069.33 162.518 3.9267
70 6069.31 155.903 3.81855
71 6069.29 149.608 3.71468
72 6069.26 143.615 3.61486
73 6069.24 137.907 3.5189
74 6069.22 132.468 3.42658
75 6069.21 127.283 3.33774
76 6069.19 122.339 3.25221
77 6069.17 117.623 3.16981
78 6069.15 113.123 3.09041
79 6069.14 108.827 3.01386
80 6069.12 104.725 2.94002
81 6069.1 100.806 2.86877
82 6069.09 97.0611 2.8
83 6069.07 93.4814 2.73358
84 6069.06 90.0583 2.66942
85 6069.05 86.7842 2.60741
86 6069.03 83.6513 2.54745
87 6069.02 80.6528 2.48947
88 6069.01 77.7821 2.43338
89 6068.99 75.0328 2.37908
90 6068.98 72.399 2.32652
91 6068.97 69.8752 2.27561
92 6068.96 67.4561 2.22629
93 6068.95 65.1367 2.17849
94 6068.94 62.9122 2.13216
95 6068.93 60.7784 2.08723
96 6068.92 58.7308 2.04364
97 6068.91 56.7655 2.00135
98 6068.9 54.8787 1.9603
99 6068.89 4349.28 18.1917
100 6068.77 2416.27 14.4439
101 6068.71 1721.26 12.1305
102 6068.66 1228.78 10.289
103 6068.63 884.002 8.82019
104 6068.6 639.615 7.62745
105 6068.58 464.84 6.64627
106 6068.56 338.878 5.82964
107 6068.55 247.508 5.14297
108 6068.54 180.878 4.56032
109 6068.53 132.084 4.06194
110 6068.52 96.2342 3.63255
111 6068.51 69.8362 3.26019
112 6068.51 50.3734 2.93541
113 6068.5 36.0205 2.65062
114 6068.5 25.4451 2.39969
115 6068.49 17.6693 2.17764
116 6068.49 1027.39 14.0164
117 6068.48 544.039 5.3137
118 6068.48 94.0569 2.86662
119 6068.48 113.637 3.73503
120 6068.48 0.51834 1.37051
121 6068.48 4.59439 0.912827
122 6068.48 1.56359 0.629276
123 6068.48 1.13825 0.432567
124 6068.48 0.296021 0.297532
Iterations terminated: relative change in SSE less than OPTIONS.TolFun
Especifique un modelo de regresión no lineal para estimación mediante un identificador de función o una sintaxis de modelo.
Cargue los datos de muestra.
S = load('reaction');
X = S.reactants;
y = S.rate;
beta0 = S.beta;Utilice un identificador de función para especificar el modelo Hougen-Watson para los datos de tasa.
mdl = fitnlm(X,y,@hougen,beta0)
mdl =
Nonlinear regression model:
y ~ hougen(b,X)
Estimated Coefficients:
Estimate SE tStat pValue
________ ________ ______ _______
b1 1.2526 0.86701 1.4447 0.18654
b2 0.062776 0.043561 1.4411 0.18753
b3 0.040048 0.030885 1.2967 0.23089
b4 0.11242 0.075157 1.4957 0.17309
b5 1.1914 0.83671 1.4239 0.1923
Number of observations: 13, Error degrees of freedom: 8
Root Mean Squared Error: 0.193
R-Squared: 0.999, Adjusted R-Squared 0.998
F-statistic vs. zero model: 3.91e+03, p-value = 2.54e-13
De forma alternativa, puede utilizar una expresión para especificar el modelo Hougen-Watson para los datos de tasa.
myfun = 'y~(b1*x2-x3/b5)/(1+b2*x1+b3*x2+b4*x3)';
mdl2 = fitnlm(X,y,myfun,beta0)mdl2 =
Nonlinear regression model:
y ~ (b1*x2 - x3/b5)/(1 + b2*x1 + b3*x2 + b4*x3)
Estimated Coefficients:
Estimate SE tStat pValue
________ ________ ______ _______
b1 1.2526 0.86701 1.4447 0.18654
b2 0.062776 0.043561 1.4411 0.18753
b3 0.040048 0.030885 1.2967 0.23089
b4 0.11242 0.075157 1.4957 0.17309
b5 1.1914 0.83671 1.4239 0.1923
Number of observations: 13, Error degrees of freedom: 8
Root Mean Squared Error: 0.193
R-Squared: 0.999, Adjusted R-Squared 0.998
F-statistic vs. zero model: 3.91e+03, p-value = 2.54e-13
Genere datos de muestra a partir del modelo de regresión no lineal
donde , y son coeficientes y el término de error está distribuido normalmente con media 0 y desviación estándar 0,5.
modelfun = @(b,x)(b(1)+b(2)*exp(-b(3)*x)); rng('default') % for reproducibility b = [1;3;2]; x = exprnd(2,100,1); y = modelfun(b,x) + normrnd(0,0.5,100,1);
Establezca las opciones de ajuste robusto.
opts = statset('nlinfit'); opts.RobustWgtFun = 'bisquare';
Ajuste el modelo no lineal utilizando las opciones de ajuste robusto. Aquí, use una expresión para especificar el modelo.
b0 = [2;2;2]; modelstr = 'y ~ b1 + b2*exp(-b3*x)'; mdl = fitnlm(x,y,modelstr,b0,'Options',opts)
mdl =
Nonlinear regression model (robust fit):
y ~ b1 + b2*exp( - b3*x)
Estimated Coefficients:
Estimate SE tStat pValue
________ _______ ______ __________
b1 1.0218 0.07202 14.188 2.1344e-25
b2 3.6619 0.25429 14.401 7.974e-26
b3 2.9732 0.38496 7.7232 1.0346e-11
Number of observations: 100, Error degrees of freedom: 97
Root Mean Squared Error: 0.501
R-Squared: 0.807, Adjusted R-Squared 0.803
F-statistic vs. constant model: 203, p-value = 2.34e-35
Cargue los datos de muestra.
S = load('reaction');
X = S.reactants;
y = S.rate;
beta0 = S.beta;Especifique un identificador de función para ponderaciones de las observaciones. La función acepta los valores ajustados del modelo como entrada y devuelve un vector de ponderaciones.
a = 1; b = 1; weights = @(yhat) 1./((a + b*abs(yhat)).^2);
Ajuste el modelo Hougen-Watson a los datos de tasa utilizando la función de las ponderaciones de las observaciones especificados.
mdl = fitnlm(X,y,@hougen,beta0,'Weights',weights)mdl =
Nonlinear regression model:
y ~ hougen(b,X)
Estimated Coefficients:
Estimate SE tStat pValue
________ ________ ______ _______
b1 0.83085 0.58224 1.427 0.19142
b2 0.04095 0.029663 1.3805 0.20477
b3 0.025063 0.019673 1.274 0.23842
b4 0.080053 0.057812 1.3847 0.20353
b5 1.8261 1.281 1.4256 0.19183
Number of observations: 13, Error degrees of freedom: 8
Root Mean Squared Error: 0.037
R-Squared: 0.998, Adjusted R-Squared 0.998
F-statistic vs. zero model: 1.14e+03, p-value = 3.49e-11
Cargue los datos de muestra.
S = load('reaction');
X = S.reactants;
y = S.rate;
beta0 = S.beta;Ajuste el modelo Hougen-Watson a los datos de tasa utilizando el modelo de varianza de error combinado.
mdl = fitnlm(X,y,@hougen,beta0,'ErrorModel','combined')
mdl =
Nonlinear regression model:
y ~ hougen(b,X)
Estimated Coefficients:
Estimate SE tStat pValue
________ ________ ______ _______
b1 1.2526 0.86702 1.4447 0.18654
b2 0.062776 0.043561 1.4411 0.18753
b3 0.040048 0.030885 1.2967 0.23089
b4 0.11242 0.075158 1.4957 0.17309
b5 1.1914 0.83671 1.4239 0.1923
Number of observations: 13, Error degrees of freedom: 8
Root Mean Squared Error: 1.27
R-Squared: 0.999, Adjusted R-Squared 0.998
F-statistic vs. zero model: 3.91e+03, p-value = 2.54e-13
Argumentos de entrada
Datos de entrada, incluidas las variables predictoras y de respuesta, especificados en forma de tabla o arreglo de conjuntos de datos. Las variables predictoras y la variable de respuesta deben ser numéricas.
Si especifica
modelfunmediante una fórmula, la especificación del modelo en la fórmula determina las variables predictoras y de respuesta.De forma predeterminada, si especifica
modelfunmediante un identificador de función, la última variable es la variable de respuesta y el resto son las variables predictoras. Puede establecer otra columna como la variable de respuesta mediante el argumento de par nombre-valorResponseVar. Para seleccionar un subconjunto de las columnas como predictores, utilice el argumento de par nombre-valorPredictorVars.
Los nombres de las variables de una tabla no tienen que ser identificadores válidos de MATLAB®, pero los nombres no deben contener espacios en blanco al principio ni al final. Si los nombres no son válidos, no puede especificar modelfun mediante una fórmula.
Puede verificar los nombres de las variables en tbl mediante la función isvarname. Si los nombres de las variables no son válidos, puede convertirlos en válidos mediante la función matlab.lang.makeValidName.
Tipos de datos: table
Variables predictoras, especificadas como una matriz n por p, donde n es el número de observaciones y p es el número de variables predictoras. Cada columna de X representa una variable y cada fila, una observación.
Tipos de datos: single | double
Variable de respuesta, especificada como vector n por 1, donde n es el número de observaciones. Cada entrada de y es la respuesta de la fila correspondiente en X.
Tipos de datos: single | double
Formato funcional del modelo, especificado como uno de los siguientes:
Identificador de función
@omodelfun@(b,x), dondemodelfunbes un vector de coeficientes con el mismo número de elementos quebeta0.xes una matriz con el mismo número de columnas queXo el número de columnas de variables predictoras detbl.
modelfun(b,x)devuelve un vector columna que contiene el mismo número de filas quex. Cada fila del vector es el resultado de evaluarmodelfunen la fila correspondiente dex. En otras palabras,modelfunes una función vectorizada que opera en todas las filas de los datos y devuelve todas las evaluaciones en una sola llamada de función.modelfundebe devolver números reales para obtener coeficientes significativos.Un vector de caracteres o una fórmula de escalar de cadena con el formato
', dondey~f(b1,b2,...,bj,x1,x2,...,xk)'frepresenta una función escalar de las variables de coeficientes escalaresb1,...,bjy las variables de datos escalaresx1,...,xk. Los nombres de las variables de la fórmula deben ser identificadores válidos de MATLAB.
Tipos de datos: function_handle | char | string
Coeficientes del modelo no lineal, especificados como un vector numérico. NonLinearModel empieza su búsqueda de los coeficientes óptimos a partir de beta0.
Tipos de datos: single | double
Argumentos de par nombre-valor
Especifique pares de argumentos opcionales Name1=Value1,...,NameN=ValueN, donde Name es el nombre del argumento y Value es el valor correspondiente. Los argumentos nombre-valor deben aparecer después de otros argumentos, pero el orden de los pares no importa.
En versiones anteriores a R2021a, use comas para separar cada nombre y valor y encierre Name entre comillas.
Ejemplo: 'ErrorModel','combined','Exclude',2,'Options',opt especifica el modelo de error como el modelo combinado, excluye la segunda observación del ajuste y usa las opciones definidas en la estructura opt para controlar el procedimiento iterativo de ajuste.
Nombres de los coeficientes de modelos, especificados como un arreglo de cadenas o un arreglo de celdas de vectores de caracteres.
Tipos de datos: string | cell
Formato del modelo de varianza del error, especificado como uno de los indicados a continuación. Cada modelo define el error usando una variable estándar media-cero y unidad-varianza e en combinación con componentes independientes: el valor de la función f y uno o dos parámetros a y b.
'constant' (valor predeterminado) | |
'proportional' | |
'combined' |
El único modelo de error permitido cuando se usa Weights es 'constant'.
Nota
options.RobustWgtFun debe tener valor [] cuando use un modelo de error distinto de 'constant'.
Ejemplo: 'ErrorModel','proportional'
Estimaciones iniciales de parámetros de modelo de error en el ErrorModel elegido, especificadas como un arreglo numérico.
| Modelo de error | Parámetros | Valores predeterminados |
|---|---|---|
'constant' | a | 1 |
'proportional' | b | 1 |
'combined' | a, b | [1,1] |
Solo puede usar el modelo de error 'constant' cuando utilice Weights.
Nota
options.RobustWgtFun debe tener valor [] cuando use un modelo de error distinto de 'constant'.
Por ejemplo, si 'ErrorModel' tiene el valor 'combined', puede especificar el valor inicial 1 para a y el valor inicial 2 para b de la siguiente manera.
Ejemplo: 'ErrorParameters',[1,2]
Tipos de datos: single | double
Observaciones que se excluirán del ajuste, especificadas como el par separado por comas que consta de 'Exclude' y un vector índice lógico o numérico que indica qué observaciones se excluirán del ajuste.
Por ejemplo, puede excluir las observaciones 2 y 3 de un total de 6 mediante cualquiera de los siguientes ejemplos.
Ejemplo: 'Exclude',[2,3]
Ejemplo: 'Exclude',logical([0 1 1 0 0 0])
Tipos de datos: single | double | logical
Opciones para controlar el procedimiento iterativo de ajuste, especificadas como una estructura creada por statset. Los campos relevantes son los campos no vacíos de la estructura devueltos por la llamada statset('fitnlm').
| Opción | Significado | Valor predeterminado |
|---|---|---|
DerivStep | Diferencia relativa utilizada en los cálculos de derivadas mediante diferencias finitas. Escalar positivo o vector de escalares positivos del mismo tamaño que el vector de parámetros estimado por la función de Statistics and Machine Learning Toolbox™ utilizando la estructura de opciones. | eps^(1/3) |
Display | Cantidad de información que muestra el algoritmo de ajuste.
| 'off' |
FunValCheck | Vector de caracteres o cadena de texto que indica que se deben comprobar los valores no válidos, como NaN o Inf, de la función modelo. | 'on' |
MaxIter | Número máximo de iteraciones permitidas. Entero positivo. | 200 |
RobustWgtFun | Función de ponderación para un ajuste robusto. También puede ser un identificador de función que acepte un valor residual normalizado como entrada y que devuelva ponderaciones robustas como salida. Si utiliza un identificador de función, proporcione una constante Tune. Consulte Opciones robustas. | [] |
Tune | Constante de ajuste usada en el ajuste robusto para normalizar los valores residuales antes de aplicar la función de ponderación. Escalar positivo. Necesario si la función de ponderación está especificada como un identificador de función. | Consulte Opciones robustas para conocer el valor predeterminado, que depende de RobustWgtFun. |
TolFun | Tolerancia de terminación del valor de la función objetivo. Escalar positivo. | 1e-8 |
TolX | Tolerancia de terminación de los parámetros. Escalar positivo. | 1e-8 |
Tipos de datos: struct
Variables predictoras que se utilizarán en el ajuste, especificadas como el par separado por comas que consta de 'PredictorVars' y un arreglo de cadenas o un arreglo de celdas de vectores de caracteres de los nombres de las variables en la tabla o el arreglo de conjuntos de datos tbl, o un vector índice lógico o numérico que indica qué columnas son las variables predictoras.
Los valores de la cadena o los vectores de caracteres deben estar entre los nombres que figuran en tbl o en los nombres que especifique mediante el argumento de par nombre-valor 'VarNames'.
El valor predeterminado es todas las variables en X o en tbl excepto ResponseVar.
Por ejemplo, puede especificar que la segunda y la tercera variables son las variables predictoras mediante cualquiera de los siguientes ejemplos.
Ejemplo: 'PredictorVars',[2,3]
Ejemplo: 'PredictorVars',logical([0 1 1 0 0 0])
Tipos de datos: single | double | logical | string | cell
Variable de respuesta que se utilizará en el ajuste, especificada como el par separado por comas que consta de 'ResponseVar' y un nombre de variable de la tabla o el arreglo de conjuntos de datos tbl, o un vector de índices lógicos o numéricos que indica qué columna es la variable de respuesta.
Si especifica un modelo, este especifica la variable de respuesta. De lo contrario, al ajustar una tabla o un arreglo de conjuntos de datos, 'ResponseVar' indica qué variable fitnlm se debe utilizar como la respuesta.
Por ejemplo, puede especificar que la cuarta variable, es decir, yield, es la respuesta de un total de seis variables de una de las siguientes maneras.
Ejemplo: 'ResponseVar','yield'
Ejemplo: 'ResponseVar',[4]
Ejemplo: 'ResponseVar',logical([0 0 0 1 0 0])
Tipos de datos: single | double | logical | char | string
Nombres de las variables, especificados como el par separado por comas que consta de 'VarNames' y un arreglo de cadenas o un arreglo de celdas de vectores de caracteres que incluye los nombres de las columnas de X en primer lugar y el nombre de la variable de respuesta y en último lugar.
'VarNames' no se puede aplicar a las variables de una tabla o un arreglo de conjuntos de datos, puesto que dichas variables ya tienen nombres.
Ejemplo: 'VarNames',{'Horsepower','Acceleration','Model_Year','MPG'}
Tipos de datos: string | cell
Ponderaciones de las observaciones, especificadas como un vector de valores de escalar no negativos o un identificador de función.
Si especifica un vector, este debe tener n elementos, donde n es el número de filas de
tbloy.Si especifica un identificador de función, la función debe aceptar un vector de valores de respuesta pronosticados como entrada y devolver un vector de ponderaciones reales positivas como salida.
Dadas las ponderaciones, W, NonLinearModel estima la varianza del error en la observación i mediante MSE*(1/W(i)), donde MSE es el error cuadrático medio.
Tipos de datos: single | double | function_handle
Argumentos de salida
Modelo no lineal que representa un ajuste de mínimos cuadrados de la respuesta a los datos, devuelto como objeto NonLinearModel.
Si la estructura Options contiene un campo RobustWgtFun que no está vacío, el modelo no es un ajuste de mínimos cuadrados, sino que utiliza la función de ajuste robusto RobustWgtFun.
Para ver las propiedades y los métodos del objeto de modelo no lineal, mdl, consulte la página de la clase NonLinearModel.
Más acerca de
| Función de ponderación | Ecuación | Constante de ajuste predeterminada |
|---|---|---|
'andrews' | w = (abs(r)<pi) .* sin(r) ./ r | 1.339 |
'bisquare' (valor predeterminado) | w = (abs(r)<1) .* (1 - r.^2).^2 | 4.685 |
'cauchy' | w = 1 ./ (1 + r.^2) | 2.385 |
'fair' | w = 1 ./ (1 + abs(r)) | 1.400 |
'huber' | w = 1 ./ max(1, abs(r)) | 1.345 |
'logistic' | w = tanh(r) ./ r | 1.205 |
'talwar' | w = 1 * (abs(r)<1) | 2.795 |
'welsch' | w = exp(-(r.^2)) | 2.985 |
[] | Sin ajuste robusto | — |
Algoritmos
fitnlmusa el mismo algoritmo de ajuste quenlinfit.fitnlmconsidera los valoresNaNdetbl,Xeycomo valores faltantes. Al ajustar un modelo,fitnlmno usa observaciones con valores faltantes u observaciones en las quemodelfundevuelve valoresNaN. La propiedadObservationInfode un modelo ajustado contiene información acerca de sifitnlmutiliza cada una de las observaciones del ajuste o no.
Referencias
[1] Seber, G. A. F., and C. J. Wild. Nonlinear Regression. Hoboken, NJ: Wiley-Interscience, 2003.
[2] DuMouchel, W. H., and F. L. O'Brien. “Integrating a Robust Option into a Multiple Regression Computing Environment.” Computer Science and Statistics: Proceedings of the 21st Symposium on the Interface. Alexandria, VA: American Statistical Association, 1989.
[3] Holland, P. W., and R. E. Welsch. “Robust Regression Using Iteratively Reweighted Least-Squares.” Communications in Statistics: Theory and Methods, A6, 1977, pp. 813–827.
Historial de versiones
Introducido en R2013b
MATLAB Command
You clicked a link that corresponds to this MATLAB command:
Run the command by entering it in the MATLAB Command Window. Web browsers do not support MATLAB commands.
Seleccione un país/idioma
Seleccione un país/idioma para obtener contenido traducido, si está disponible, y ver eventos y ofertas de productos y servicios locales. Según su ubicación geográfica, recomendamos que seleccione: .
También puede seleccionar uno de estos países/idiomas:
Cómo obtener el mejor rendimiento
Seleccione China (en idioma chino o inglés) para obtener el mejor rendimiento. Los sitios web de otros países no están optimizados para ser accedidos desde su ubicación geográfica.
América
- América Latina (Español)
- Canada (English)
- United States (English)
Europa
- Belgium (English)
- Denmark (English)
- Deutschland (Deutsch)
- España (Español)
- Finland (English)
- France (Français)
- Ireland (English)
- Italia (Italiano)
- Luxembourg (English)
- Netherlands (English)
- Norway (English)
- Österreich (Deutsch)
- Portugal (English)
- Sweden (English)
- Switzerland
- United Kingdom (English)