Esta página aún no se ha traducido para esta versión. Puede ver la versión más reciente de esta página en inglés.
La interfaz de usuario de ajuste básico le permite interactivamente:MATLAB®
Modele los datos utilizando un Interpolante spline, un Interpolante de preservación de la forma o un polinomio hasta el décimo grado
Trace uno o más ajustes junto con datos
Graficar los residuos de los ajustes
Calcule los coeficientes del modelo
Calcule la norma de los residuos (una estadística que puede usar para analizar qué tan bien se ajusta un modelo a sus datos)
Utilice el modelo para interpolar o extrapolar fuera de los datos
Guarde los coeficientes y los valores calculados en el espacio de trabajo para utilizarlos fuera del cuadro de diálogoMATLAB
Genere código para volver a calcular los ajustes y reproduzca parcelas con nuevos datosMATLAB
La interfaz de usuario de conexión básica solo está disponible para parcelas en 2-D. Para obtener más información sobre la adaptación y el análisis de regresión, consulte la documentación y la documentación.Curve Fitting Toolbox™Statistics and Machine Learning Toolbox™
La interfaz de usuario de ajuste básico ordena los datos en orden ascendente antes del ajuste. Si el conjunto de datos es grande y los valores no se ordenan en orden ascendente, tardará más tiempo en que la interfaz de usuario de ajuste básico preprocese los datos antes de realizar el ajuste.
Puede acelerar la IU de conexión básica ordenando primero los datos. Para crear vectores ordenados y a partir de vectores de datos, utilice la función:x_sorted
y_sorted
x
y
MATLABsort
[x_sorted, i] = sort(x); y_sorted = y(i);
Para usar la interfaz de usuario de conexión básica, primero debe trazar los datos en una ventana de figura, utilizando cualquier comando de trazado que produzca (solo) y datos.MATLABxy
Para abrir la interfaz de usuario de conexión básica, seleccione en los menús de la parte superior de la ventana de la figura.Tools > Basic Fitting
Cuando se expande por completo haciendo doble clic en el botón de flechaen la esquina inferior derecha, la ventana muestra tres paneles. Utilice estos paneles para:
Seleccione un modelo y las opciones de trazado
Examine y exporte los coeficientes del modelo y las normas de los residuos
Examine y exporte valores interpolados y extrapolados.
Para expandir o contraer los paneles uno por uno, haga clic en el botón de flecha en la esquina inferior derecha de la interfaz.
En este ejemplo se muestra cómo usar la interfaz de usuario de conexión básica para ajustar, visualizar, analizar, guardar y generar código para las regresiones polinómicas.
El archivo,, contiene datos de población de Estados Unidos para los años 1790 a 1990 a intervalos de 10 años.census.mat
Para cargar y trazar los datos, escriba los siguientes comandos en el símbolo del sistema:MATLAB
load census plot(cdate,pop,'ro')
El comando añade las siguientes variables al espacio de trabajo:load
MATLAB
— Un vector de columna que contiene los años de 1790 a 1990 en incrementos de 10.cdate
Es la variable predictora.
— Un vector de columna con población estadounidense para cada año en.pop
cdate
Es la variable de respuesta.
Los vectores de datos se ordenan en orden ascendente, por año. La trama muestra la población en función del año.
Ahora está listo para encajar una ecuación de los datos para modelar el crecimiento de la población a lo largo del tiempo.
Abra el cuadro de diálogo ajuste básico seleccionando en la ventana figura.Tools > Basic Fitting
En el área del cuadro de diálogo ajuste básico, active la casilla de verificación para ajustar un polinomio cúbico a los datos.Plot fitscubic
usa la selección para ajustarse a los datos y agrega la línea de regresión cúbica al gráfico de la siguiente manera.MATLAB
En la computación del ajuste, encuentra problemas y emite la siguiente ADVERTENCIA:MATLAB
El polinomio está mal condicionado. Añada puntos con valores X distintos, seleccione un polinomio con un grado inferior o seleccione "centrar y escalar X datos."
Esta advertencia indica que los coeficientes calculados para el modelo son sensibles a los errores aleatorios en la respuesta (la población medida). También sugiere algunas cosas que usted puede hacer para conseguir un mejor ajuste.
Siga usando un ajuste cúbico. Como no puede agregar nuevas observaciones a los datos del censo, mejore el ajuste transformando los valores que tiene antes de volver a calcular un ajuste.z-scores Seleccione la casilla de verificación en el cuadro de diálogo para que la herramienta de ajuste básico realice la transformación.Center and scale X data
Para saber cómo funcionan los datos de centrado y escalado, consulte.Aprenda cómo la herramienta de adaptación básica computa los ajustes
Ahora vea las ecuaciones y visualice los residuos. Además de seleccionar las casillas de verificación y, seleccione las siguientes opciones:Center and scale X datacubic
Show equations
Plot residuals
Show norm of residuals
Al seleccionar, se crea una subgráfica de ellas como un gráfico de barras.Plot residuals En la siguiente ilustración se muestran los resultados de las opciones de interfaz de usuario de conexión básica que seleccionó.
El ajuste cúbico es un predictor deficiente antes del año 1790, donde indica una población decreciente. El modelo parece aproximar los datos razonablemente bien después de 1790. Sin embargo, un patrón en los residuos muestra que el modelo no cumple con la suposición de error normal, que es una base para el ajuste de mínimos cuadrados. La línea identificada en la leyenda son los valores de datos observados () y ().data 1xcdate
ypop
La línea de regresión presenta el ajuste después de centrar y escalar los valores de datos.cubic Observe que la figura muestra las unidades de datos originales, aunque la herramienta calcule el ajuste utilizando puntuaciones z transformadas.
Para comparar, intente ajustar otra ecuación polinómica a los datos del censo seleccionándolos en el área.Plot fits
En el cuadro de diálogo ajuste básico, haga clic en el botón de flechapara mostrar los coeficientes estimados y la norma de los residuos en el panel.Numerical results
Para ver un ajuste específico, selecciónelo en la lista.Fit Esto muestra los coeficientes en el cuadro de diálogo ajuste básico, pero no traza el ajuste en la ventana de la figura.
Si también desea mostrar un ajuste en el trazado, debe seleccionar la casilla de verificación correspondiente.Plot fits
Guarde los datos de ajuste en el espacio de trabajo haciendo clic en el botón del panel resultados numéricos.MATLABSave to workspace Se abre el cuadro de diálogo guardar ajuste al espacio de trabajo.
Con todas las casillas de verificación seleccionadas, haga clic para guardar los parámetros de ajuste como una estructura:OKMATLAB
fit fit = type: 'polynomial degree 3' coeff: [0.9210 25.1834 73.8598 61.7444]
Ahora, puede usar los resultados de ajuste en la programación, fuera de la interfaz de usuario de conexión básica.MATLAB
Puede obtener una indicación de qué tan bien una regresión polinómica predice los datos observados calculando el o (escrito como Rcoeficiente de determinación,R-cuadrado2). El R2 Estadística, que oscila entre 0 y 1, mide cuán útil es la variable independiente para predecir los valores de la variable dependiente:
Un R2 valor cercano a 0 indica que el ajuste no es mucho mejor que el modelo.y = constant
Un R2 valor cercano a 1 indica que la variable independiente explica la mayor parte de la variabilidad en la variable dependiente.
Para calcular R2, calcule primero un ajuste y, a continuación, obtenga de él.Residuos Un residuo es la diferencia firmada entre un valor dependiente observado y el valor que su ajuste predice para él.
residuales = yobserved -yfitted
Después de tener valores residuales, puede guardarlos en el área de trabajo, donde puede calcular R2. Complete la parte anterior de este ejemplo para ajustar un polinomio cúbico a los datos del censo, y después realice estos pasos:
Calcular datos residuales y R2 para un cubic Fit
Haga clic en el botón de flechaen la parte inferior derecha para abrir la pestaña resultados numéricos si aún no está visible.
En el menú desplegable, seleccioneFit cubic
Si aún no se muestra.
Guarde los coeficientes de ajuste, la norma de los residuos y los residuales haciendo clic.Save to Workspace
Se abre el cuadro de diálogo guardar ajuste al espacio de trabajo con tres casillas de verificación y tres campos de texto.
Seleccione las tres casillas de verificación para guardar los coeficientes de ajuste, la norma de los residuos y los valores residuales.
Identifique las variables guardadas como pertenecientes a un ajuste cúbico. Cambie los nombres de las variables agregando un a cada nombre predeterminado (por ejemplo,, y).3
fit3
normresid3
resids3
El cuadro de diálogo debe ser como esta figura.
Haga clic.OK El accesorio básico guarda los residuos como un vector de columna de números, ajusta los coeficientes como struct y la norma de los residuos como un escalar.
Observe que el valor que calcula el accesorio básico para la norma de los residuos es.12.2380
Este número es la raíz cuadrada de la suma de los residuos cuadrados del ajuste cúbico.
Opcionalmente, puede verificar el valor de la norma de residuos que proporciona la herramienta de ajuste básico. Calcule la norma de residuos usted mismo de la matriz que acaba de guardar:resids3
mynormresid3 = sum(resids3.^2)^(1/2) mynormresid3 = 12.2380
Calcule la variable dependiente para calcular Rsuma total de los cuadradospop
2. La suma total de los cuadrados es la suma de las diferencias cuadradas de cada valor a partir de la media de la variable. Por ejemplo, utilice este código: calcula la varianza del vector de población.
SSpop = (length(pop)-1) * var(pop) SSpop = 1.2356e+005
var(pop)
Se multiplica por el número de observaciones después de restar 1 para tener en cuenta los grados de libertad. Tanto la suma total de los cuadrados como la norma de los residuos son escalares positivos. Ahora, Compute R2, utilizando el cuadrado de y:normresid3
SSpop
rsqcubic = 1 - normresid3^2 / SSpop rsqcubic = 0.9988
Por último, Compute R2 para un ajuste lineal y compararlo con el cúbico R2 valor que acaba de derivar. La interfaz de usuario de ajuste básico también le proporciona los resultados de ajuste lineal. Para obtener los resultados lineales, repita los pasos 2-6, modificando sus acciones de la siguiente manera:
Para calcular los coeficientes de regresión lineal de mínimos cuadrados y las estadísticas, en el menú desplegable del panel resultados numéricos, seleccioneFit linear
En lugar de cubic
.
En el cuadro de diálogo Guardar en espacio de trabajo, anexe a cada nombre de variable para identificarlo como derivado de un ajuste lineal y haga clic en.1
OK Las variables, y ahora existen en el espacio de trabajo.fit1
normresid1
resids1
Utilice la variable () para calcular Rnormresid1
98.778
2 para el ajuste lineal, como lo hizo en el paso 9 para el ajuste cúbico:
rsqlinear = 1 - normresid1^2 / SSpop rsqlinear = 0.9210
Este resultado indica que un ajuste lineal de mínimos cuadrados de los datos de población explica el 92,1% de su varianza. Como el ajuste cúbico de estos datos explica el 99,9% de esa varianza, este último parece ser un mejor predictor. Sin embargo, debido a que un ajuste cúbico predice el uso de tres variables (,x X2Y X3), un R básico2 valor no refleja completamente lo robusto que es el ajuste. Una medida más apropiada para evaluar la bondad de los ajustes multivariados es ajustado R2. Para obtener información sobre la computación y el uso de R2Ver.Los residuos y la bondad de ajuste
R2 mide qué tan bien su ecuación polinómica es la variable dependiente, no cómo el modelo polinómico es para sus datos.predictsappropriate Cuando se analizan datos inherentemente impredecibles, un pequeño valor de R2 indica que la variable independiente no predice la variable dependiente con precisión. Sin embargo, no necesariamente significa que hay algo mal con el ajuste.
Calcular datos residuales y R2 para un ajuste lineal. En el siguiente ejemplo, utilice la interfaz de usuario de conexión básica para realizar un ajuste lineal, guardar los resultados en el espacio de trabajo y calcular R2 para el ajuste lineal. A continuación, puede comparar R2 con el cúbico R2 valor que se deriva en el ejemplo.Calcular datos residuales y R2 para un cubic Fit
Haga clic en el botón de flechaen la parte inferior derecha para abrir la pestaña resultados numéricos si aún no está visible.
Seleccione la casilla de verificación en el área.linearPlot fits
En el menú desplegable, seleccioneFit linear
Si aún no se muestra. El área coeficientes y norma de residuos muestra las estadísticas para el ajuste lineal.
Guarde los coeficientes de ajuste, la norma de los residuos y los residuales haciendo clic.Save to Workspace
Se abre el cuadro de diálogo guardar ajuste al espacio de trabajo con tres casillas de verificación y tres campos de texto.
Seleccione las tres casillas de verificación para guardar los coeficientes de ajuste, la norma de los residuos y los valores residuales.
Identifique las variables guardadas como pertenecientes a un ajuste lineal. Cambie los nombres de las variables agregando un a cada nombre predeterminado (por ejemplo,, y).1
fit1
normresid1
resids1
Haga clic.OK El accesorio básico guarda los residuos como un vector de columna de números, ajusta los coeficientes como struct y la norma de los residuos como un escalar.
Observe que el valor que calcula el accesorio básico para la norma de los residuos es.98.778
Este número es la raíz cuadrada de la suma de los residuos cuadrados del ajuste lineal.
Opcionalmente, puede verificar el valor de la norma de residuos que proporciona la herramienta de ajuste básico. Calcule la norma de residuos usted mismo de la matriz que acaba de guardar:resids1
mynormresid1 = sum(resids1.^2)^(1/2) mynormresid1 = 98.7783
Calcule la variable dependiente para calcular Rsuma total de los cuadradospop
2. La suma total de los cuadrados es la suma de las diferencias cuadradas de cada valor a partir de la media de la variable. Por ejemplo, utilice este código: calcula la varianza del vector de población.
SSpop = (length(pop)-1) * var(pop) SSpop = 1.2356e+005
var(pop)
Se multiplica por el número de observaciones después de restar 1 para tener en cuenta los grados de libertad. Tanto la suma total de los cuadrados como la norma de los residuos son escalares positivos. Ahora, Compute R2, utilizando el cuadrado de y:normresid1
SSpop
rsqlinear = 1 - normresid1^2 / SSpop rsqcubic = 0.9210
Este resultado indica que un ajuste lineal de mínimos cuadrados de los datos de población explica el 92,1% de su varianza. Como el ajuste cúbico de estos datos explica el 99,9% de esa varianza, este último parece ser un mejor predictor. Sin embargo, un ajuste cúbico tiene cuatro coeficientes (,x X2, X3, y una constante), mientras que un ajuste lineal tiene dos coeficientes (y una constante).x Un simple R2 Estadística no tiene en cuenta los diferentes grados de libertad. Una medida más apropiada para evaluar los ajustes polinómicos es ajustado R2. Para obtener información sobre la computación y el uso de R2Ver.Los residuos y la bondad de ajuste
R2 mide qué tan bien su ecuación polinómica es la variable dependiente, no cómo el modelo polinómico es para sus datos.predictsappropriate Cuando se analizan datos inherentemente impredecibles, un pequeño valor de R2 indica que la variable independiente no predice la variable dependiente con precisión. Sin embargo, no necesariamente significa que hay algo mal con el ajuste.
Supongamos que desea utilizar el modelo cúbico para interpolar la población de EE. UU. en 1965 (una fecha no proporcionada en los datos originales).
En el cuadro de diálogo ajuste básico, haga clic en elbotón para especificar un vector de valores en el que evaluar el ajuste actual.
x
En el campo, escriba el siguiente valor:Enter value(s)...
1965
Utilice valores sin escala y sin centrar.x
No es necesario centrar y escalar primero, aunque haya seleccionado escalar valores para obtener los coeficientes.x
Predecir los datos del censo con un ajuste polinomio cúbico La herramienta de ajuste básico hace los ajustes necesarios detrás de las escenas.
Haga clic.Evaluate
Los valores y los valores correspondientes para calculados desde el ajuste y mostrados en una tabla, como se muestra a continuación:x
f(x)
Seleccione la casilla de verificación para mostrar el valor interpolado como un marcador de diamante:Plot evaluated results
Guarde la población interpolada en 1965 en el espacio de trabajo haciendo clic en.MATLABSave to workspace
Se abrirá el siguiente cuadro de diálogo, donde se especifican los nombres de las variables:
Haga clic, pero mantenga la ventana de figura abierta si tiene la intención de seguir los pasos de la siguiente sección,.OKGenere un archivo de código para reproducir el resultado
Después de completar una sesión de ajuste básico, puede generar código que recalcule los ajustes y reproduzca trazados con nuevos datos.MATLAB
En la ventana de figura, seleccione.File > Generate Code
Esto crea una función y la muestra en el editor.MATLAB El código muestra cómo reproducir mediante programación lo que hizo de forma interactiva con el cuadro de diálogo ajuste básico.
Cambie el nombre de la función en la primera línea de a algo más específico, como.createfigure
censusplot
Guarde el archivo de código en la carpeta actual con el nombre de archivo la función comienza con:censusplot.m
function censusplot(X1, Y1, valuesToEvaluate1)
Genere algunos datos de censo nuevos y alterados aleatoriamente:
randpop = pop + 10*randn(size(pop));
Reproduzca la gráfica con los nuevos datos y vuelva a calcular el ajuste:
censusplot(cdate,randpop,1965)
Necesita tres argumentos de entrada: Values () trazados en el gráfico original, además de un valor para un marcador.x,ydata 1
x
En la siguiente ilustración se muestra la gráfica que genera el código generado. La nueva gráfica coincide con la apariencia de la figura de la que generó el código, excepto los valores de datos, la ecuación para el ajuste cúbico y los valores residuales en el gráfico de barras, como se esperaba.y
La herramienta de ajuste básico llama a la función para calcular los ajustes polinómicos.polyfit
Llama a la función para evaluar los ajustes. analiza sus entradas para determinar si los datos están bien condicionados para el grado de ajuste solicitado.polyval
polyfit
Cuando encuentra datos mal condicionados, calcula una regresión tan bien como puede, pero también devuelve una advertencia de que el ajuste podría mejorarse.polyfit
La sección de ejemplo de ajuste básico muestra esta advertencia.Predecir los datos del censo con un ajuste polinomio cúbico
Una forma de mejorar la confiabilidad del modelo es agregar puntos de datos. Sin embargo, no siempre es factible agregar observaciones a un conjunto de datos. Una estrategia alternativa es transformar la variable predictora para normalizar su centro y escala. (En el ejemplo, el predictor es el vector de las fechas del censo.)
La función normaliza mediante la computación:polyfit
z-scores
donde están los Datos predictores, es la media de, y es la desviación estándar de.xμxσx Las-puntuaciones dan a los datos una media de 0 y una desviación estándar de 1.z En la interfaz de usuario de conexión básica, se transforman los datos del predictor en puntuaciones seleccionando la casilla de verificación.zCenter and scale x data
Después de centrar y escalar, los coeficientes del modelo se calculan para los datos en función de.yz Estos son diferentes (y más robustos) que los coeficientes calculados como una función de.yx La forma del modelo y la norma de los residuos no cambian. La interfaz de usuario de conexión básica reajusta automáticamente las puntuaciones para que los trazados de ajuste en la misma escala que los datos originales.zx
Para comprender la forma en que los datos centrados y escalados se utilizan como intermediario para crear el trazado final, ejecute el siguiente código en la ventana de comandos:
close load census x = cdate; y = pop; z = (x-mean(x))/std(x); % Compute z-scores of x data plot(x,y,'ro') % Plot data as red markers hold on % Prepare axes to accept new graph on top zfit = linspace(z(1),z(end),100); pz = polyfit(z,y,3); % Compute conditioned fit yfit = polyval(pz,zfit); xfit = linspace(x(1),x(end),100); plot(xfit,yfit,'b-') % Plot conditioned fit vs. x data
Los trazados polinómicos cúbicos centrados y a escala como una línea azul, como se muestra aquí:
En el código, el cálculo ilustra cómo normalizar los datos.z
La función realiza la propia transformación si proporciona tres argumentos devueltos al llamarlo: los parámetros de regresión devueltos, ahora se basan en normalizado.polyfit
[p,S,mu] = polyfit(x,y,n)
p
x
El vector devuelto,, contiene la media y la desviación estándar de.mu
x
Para obtener más información, consulte la página de referencia.polyfit