Main Content

probplot

Gráficas de probabilidad

Descripción

ejemplo

probplot(y) crea una gráfica de probabilidad normal que compara la distribución de los datos de y con la distribución normal.

probplot representa cada punto de datos de y usando símbolos de marcadores y dibuja una línea de referencia que representa la distribución teórica. Si los datos de muestra tienen una distribución normal, los puntos de datos aparecen a lo largo de la línea de referencia. La línea de referencia conecta el primer y el tercer cuartil de los datos y se extiende hasta los extremos de los datos. Una distribución distinta de la normal introduce curvatura en la gráfica de datos.

probplot(y,cens) crea una gráfica de probabilidad usando los datos que censurar de cens.

ejemplo

probplot(y,cens,freq) crea una gráfica de probabilidad usando los datos que censurar de cens y los datos de frecuencia de freq.

ejemplo

probplot(dist,___) crea una gráfica de probabilidad para la distribución especificada por dist usando cualquiera de los argumentos de entrada de las sintaxis anteriores.

probplot(ax,___) añade una gráfica de probabilidad en los ejes de la gráfica de probabilidad existentes especificados por ax usando cualquiera de los argumentos de entrada de las sintaxis anteriores.

probplot(ax,pd) añade una línea ajustada en los ejes de la gráfica de probabilidad existentes especificados por ax para representar la distribución de probabilidad pd.

ejemplo

probplot(ax,fun,params) añade una línea ajustada en los ejes de la gráfica de probabilidad existente especificada por ax para representar la función fun con los parámetros params.

probplot(___,'noref') omite la línea de referencia de la gráfica.

ejemplo

h = probplot(___) devuelve los identificadores de las gráficas correspondientes a las líneas representadas.

Ejemplos

contraer todo

Genere datos de muestra y cree una gráfica de probabilidad.

Genere datos de muestra. La muestra x1 contiene 500 números aleatorios de una distribución de Weibull con el parámetro de escala A = 3 y el parámetro de forma B = 3. La muestra x2 contiene 500 números aleatorios de una distribución de Rayleigh con el parámetro de escala B = 3.

rng('default');  % For reproducibility
x1 = wblrnd(3,3,[500,1]);
x2 = raylrnd(3,[500,1]);

Cree una gráfica de probabilidad para evaluar si los datos de x1 y x2 proceden de una distribución de Weibull.

figure
probplot('weibull',[x1 x2])
legend('Weibull Sample','Rayleigh Sample','Location','best')

Figure contains an axes object. The axes object with title Probability plot for Weibull distribution, xlabel Data, ylabel Probability contains 4 objects of type line. One or more of the lines displays its values using only markers These objects represent Weibull Sample, Rayleigh Sample.

La gráfica de probabilidad muestra que los datos de x1 proceden de una distribución de Weibull, mientras que los datos de x2 no.

También puede usar wblplot para crear una gráfica de probabilidad de Weibull.

Cree una gráfica de probabilidad y una línea ajustada adicional en la misma figura.

Genere datos de muestra que contengan alrededor de un 20% de valores atípicos en las colas. La cola izquierda de los datos de muestra contiene 10 valores generados de manera aleatoria a partir de una distribución exponencial con el parámetro mu = 1. La cola derecha contiene 10 valores generados de manera aleatoria a partir de una distribución exponencial con el parámetro mu = 5. El centro de los datos de muestra contiene 80 valores generados de manera aleatoria a partir de una distribución normal estándar.

rng('default')  % For reproducibility
left_tail = -exprnd(1,10,1);
right_tail = exprnd(5,10,1);
center = randn(80,1);
data = [left_tail;center;right_tail];

Cree una gráfica de probabilidad para evaluar si los datos de muestra proceden de una distribución normal.

probplot(data)

Represente una curva t de localización y escala en la misma figura para compararla con data.

p = mle(data,'distribution','tLocationScale');
t = @(data,mu,sig,df)cdf('tLocationScale',data,mu,sig,df);
h = probplot(gca,t,p);
h.Color = 'r';
h.LineStyle = '-';
title('{\bf Probability Plot}')
legend('Normal','Data','t','Location','NW')

Figure contains an axes object. The axes object with title blank Probability blank Plot, xlabel Data, ylabel Probability contains 3 objects of type line. One or more of the lines displays its values using only markers These objects represent Normal, Data, t.

La gráfica muestra que ni la línea normal ni la curva t de localización y escala se ajustan muy bien a las colas debido a los valores atípicos.

Cree una gráfica de distribución de probabilidad seminormal para identificar los efectos significativos en un experimento con el fin de estudiar los factores que podrían influir en el caudal en un proceso de fabricación de productos químicos. Los cuatro factores son los reactivos A, B, C y D. Cada factor está presente en dos niveles (concentración alta y baja). El experimento contiene solo una replicación en cada nivel de factor.

Cargue los datos de muestra.

load flowrate

Las primeras cuatro columnas de la tabla flowrate contienen la matriz de diseño de los factores y sus interacciones. La matriz de diseño está codificada para usar 1 para el nivel de factor alto y -1 para el nivel de factor bajo. La quinta columna de flowrate contiene el caudal medido.

Ajuste un modelo de regresión lineal usando rate como la variable de respuesta. Use las variables predictoras A, B, C, D y todos sus términos de interacción.

mdl = fitlm(flowrate,'rate ~ A*B*C*D');

Calcule y almacene el valor absoluto de las estimaciones del efecto factorial. Para obtener las estimaciones del efecto factorial, multiplique por dos las estimaciones de los coeficientes obtenidas durante el ajuste del modelo. Este paso es necesario porque los coeficientes de regresión miden el efecto de un cambio de una unidad en x sobre la media de y. Sin embargo, las estimaciones de los efectos miden un cambio de dos unidades en x debido a la codificación de la matriz de diseño de -1 y 1. Excluya la medición de la línea de base. Tenga en cuenta que el orden de los factores de mdl puede diferir del orden de la matriz de diseño original.

effects = abs(mdl.Coefficients{2:end,1}*2);

Cree una gráfica de probabilidad seminormal usando el valor absoluto de las estimaciones de los efectos, excluyendo la línea de base.

figure
h = probplot('halfnormal',effects);

Figure contains an axes object. The axes object with title Probability plot for Half Normal distribution, xlabel Data, ylabel Probability contains 2 objects of type line. One or more of the lines displays its values using only markers

Etiquete los puntos y dé formato a la gráfica. Primero, devuelva los valores de índice para las estimaciones de los efectos en orden (de menor a mayor). A continuación, use estos valores de índice para ordenar los valores de probabilidad almacenados en el identificador de gráfica (h(1).YData).

[b,i] = sort(effects);
prob(i) = h(1).YData;

Añada etiquetas de texto a la gráfica en cada punto. Para cada punto, el valor de x es la estimación de los efectos y el valor de y es la probabilidad correspondiente.

text(effects,prob,mdl.CoefficientNames(2:end),'FontSize',8,...
    'VerticalAlignment','top')
h(1).Color = 'r';

Figure contains an axes object. The axes object with title Probability plot for Half Normal distribution, xlabel Data, ylabel Probability contains 17 objects of type line, text. One or more of the lines displays its values using only markers

Los puntos ubicados lejos de la línea de referencia representan los efectos significativos.

Genere datos de frecuencia simulados.

y = 1:10;
freq = [2 4 6 7 9 8 7 7 6 5];

Cree una gráfica de probabilidad normal usando los datos de frecuencia.

probplot(y,[],freq)

Figure contains an axes object. The axes object with title Probability plot for Normal distribution, xlabel Data, ylabel Probability contains 2 objects of type line. One or more of the lines displays its values using only markers

La gráfica de probabilidad normal muestra que los datos no tienen una distribución normal.

Argumentos de entrada

contraer todo

Datos de muestra, especificados como un vector numérico o una matriz numérica. probplot muestra cada valor de y usando símbolos de marcadores como 'x' y 'o'. Si y es una matriz, probplot muestra una línea independiente para cada columna de y.

No todas las distribuciones son adecuadas para todos los conjuntos de datos. probplot da error si el conjunto de datos no es adecuado para una distribución especificada. Consulte dist para ver los intervalos de datos adecuados para cada distribución.

Distribución para la gráfica de probabilidad, especificada como un objeto de distribución de probabilidad o uno de los siguientes nombres de distribución:

NombreTipo de gráficaIntervalo de datos
'normal'Gráfica de probabilidad normalTodos los valores
'exponential'Gráfica de probabilidad exponencialValores no negativos
'extreme value'Gráfica de probabilidad de valores extremosTodos los valores
'half normal'Gráfica de probabilidad seminormalTodos los valores
'lognormal'Gráfica de probabilidad lognormalValores positivos
'logistic'Gráfica de probabilidad logísticaTodos los valores
'loglogistic'Gráfica de probabilidad loglogísticaValores positivos
'rayleigh'Gráfica de probabilidad de RayleighValores positivos
'weibull'Gráfica de probabilidad de WeibullValores positivos

El valor predeterminado es 'normal' si crea una gráfica de probabilidad en una figura nueva. Si añade una gráfica de probabilidad a una figura que ya incluye una usando el argumento de entrada ax, el valor predeterminado es el tipo de gráfica de la gráfica de probabilidad existente.

Puede crear un objeto de distribución de probabilidad con valores de parámetros especificados usando makedist. También puede ajustar un objeto de distribución de probabilidad a los datos de muestra usando fitdist. Para obtener más información sobre los objetos de distribución de probabilidad, consulte Working with Probability Distributions.

La escala del eje y se basa en la distribución seleccionada. El eje x tiene una escala logarítmica para las distribuciones de Weibull, loglogística y lognormal, y una escala lineal para las demás.

No todas las distribuciones son adecuadas para todos los conjuntos de datos. probplot da error si el conjunto de datos no es adecuado para una distribución especificada.

Ejemplo: 'weibull'

Datos que censurar, especificados como vector numérico. cens debe tener la misma longitud que y y contener un valor de 1 para las observaciones censuradas a la derecha y un valor de 0 para las observaciones medidas con exactitud.

Tipos de datos: single | double

Datos de frecuencia, especificados como vector de valores enteros. freq debe tener la misma longitud que y. freq contiene las frecuencias de enteros para los elementos correspondientes de y.

Para crear una gráfica de probabilidad usando los datos de frecuencia y no los datos que censurar, especifique paréntesis vacíos ([]) para cens.

Tipos de datos: single | double

Ejes objetivo, especificados como un objeto Axes o un objeto UIAxes. probplot añade una gráfica adicional en los ejes especificados por ax. Para obtener más detalles, consulte Axes Properties y UIAxes Properties.

Use gca para devolver los ejes actuales de la figura actual.

Distribución de probabilidad para la línea de referencia, especificada como un objeto de distribución de probabilidad. probplot añade una línea ajustada a los ejes especificados por ax para representar la distribución de probabilidad especificada por pd.

Cree un objeto de distribución de probabilidad con valores de parámetros especificados usando makedist. También puede ajustar un objeto de distribución de probabilidad a los datos de muestra usando fitdist. Para obtener más información sobre los objetos de distribución de probabilidad, consulte Working with Probability Distributions.

Función de la línea de referencia, especificada como un identificador de función. probplot añade una línea ajustada a los ejes especificados por ax para representar la función especificada por fun, evaluada en los parámetros especificados por params.

fun es un identificador de función para una función cdf, especificada usando el operador de identificador de función @. La función debe aceptar un vector de valores de entrada como su primer argumento y devolver un vector que contenga la cdf evaluada en cada valor de entrada. Especifique los valores de los parámetros requeridos para evaluar fun usando el argumento params. Para obtener más información sobre los identificadores de función, consulte Crear un identificador de función.

Ejemplo: @wblpdf

Tipos de datos: function_handle

Parámetros de función de la línea de referencia, especificados como un vector de valores numéricos o un arreglo de celdas. probplot añade una línea ajustada a los ejes especificados por ax para representar la función especificada por fun, evaluada en los parámetros especificados por params.

fun es un identificador de función para una función cdf, especificada usando el operador de identificador de función @. La función debe aceptar un vector de valores como su primer argumento y devolver un vector de valores de la cdf evaluados en cada valor. Especifique los valores de los parámetros requeridos para evaluar fun usando el argumento params. Para obtener más información sobre los identificadores de función, consulte Crear un identificador de función.

Argumentos de salida

contraer todo

Identificadores gráficos para los objetos de línea, devueltos como un vector de identificadores gráficos de línea. Los identificadores gráficos son identificadores únicos que puede usar para consultar y modificar las propiedades de una línea específica de la gráfica. Para cada columna de y, probplot devuelve dos identificadores:

  • La línea que representa los puntos de datos. probplot representa cada punto de datos de y usando símbolos de marcadores como '+' y 'o'.

  • La línea que muestra la distribución teórica de la gráfica de probabilidad, representada como una línea discontinua.

Para consultar y establecer las propiedades de los objetos de línea, use la notación de puntos. Para obtener información sobre el uso de la notación de puntos, consulte Acceder a los valores de las propiedades. Para obtener información sobre las propiedades de Line que puede establecer, consulte Line Properties.

Algoritmos

probplot combina los cuantiles de los datos de muestra con los cuantiles de una distribución de probabilidad determinada. Los datos de muestra se ordenan, se escalan según la elección de dist y se representan en el eje x. Cuando dist es 'lognormal', 'loglogistic' o 'weibull', el escalado es logarítmico. En caso contrario, el escalado es lineal. El eje y representa los cuantiles de la distribución especificada en dist, convertidos en valores de probabilidad. El escalado depende de la distribución determinada y no es lineal.

Donde el valor del eje x es el i-ésimo valor ordenado de una muestra de tamaño N y el valor del eje y es el punto medio entre los puntos de evaluación de la función de distribución acumulativa empírica de los datos. En el caso de los datos no censurados, el punto medio es igual a (i0.5)N.

probplot superpone una línea de referencia para evaluar la linealidad de la gráfica. Si los datos no están censurados, la línea pasa por el primer y el tercer cuartiles de los datos. Si los datos están censurados, la línea se desplaza en consecuencia. Si los datos no están censurados y dist es 'half normal', entonces probplot usa los cuartiles cero y segundo.

Historial de versiones

Introducido antes de R2006a