kruskalwallis
Prueba de Kruskal-Wallis
Sintaxis
Descripción
devuelve el valor p para la hipótesis nula de que los datos de cada columna de la matriz p
= kruskalwallis(x
)x
proceden de la misma distribución, utilizando la prueba de Kruskal-Wallis. La hipótesis alternativa es que no todas las muestras proceden de la misma distribución. La prueba de Kruskal-Wallis proporciona una alternativa no paramétrica al ANOVA de un factor. Para obtener más información, consulte Prueba de Kruskal-Wallis.
devuelve el valor p de la prueba y le permite mostrar o suprimir la tabla ANOVA y la gráfica de caja.p
= kruskalwallis(x
,group
,displayopt
)
Ejemplos
Probar muestras de datos para la misma distribución
Cree dos objetos diferentes de distribución de probabilidad normal. La primera distribución tiene mu = 0
y sigma = 1
y la segunda distribución tiene mu = 2
y sigma = 1
.
pd1 = makedist('Normal'); pd2 = makedist('Normal','mu',2,'sigma',1);
Cree una matriz de datos de muestra generando números aleatorios a partir de estas dos distribuciones.
rng('default'); % for reproducibility x = [random(pd1,20,2),random(pd2,20,1)];
Las dos primeras columnas de x
contienen datos generados a partir de la primera distribución, mientras que la tercera columna contiene datos generados a partir de la segunda distribución.
Pruebe la hipótesis nula de que los datos de muestra de cada columna de x
proceden de la misma distribución.
p = kruskalwallis(x)
p = 3.6896e-06
El valor devuelto de p
indica que kruskalwallis
rechaza la hipótesis nula de que las tres muestras de datos proceden de la misma distribución a un nivel de significación del 1%. La tabla ANOVA proporciona resultados adicionales de las pruebas y la gráfica de cajas presenta visualmente las estadísticas descriptivas de cada columna de x
.
Realizar pruebas de seguimiento de medianas desiguales
Cree dos objetos diferentes de distribución de probabilidad normal. La primera distribución tiene mu = 0
y sigma = 1
. La segunda distribución tiene mu = 2
y sigma = 1
.
pd1 = makedist('Normal'); pd2 = makedist('Normal','mu',2,'sigma',1);
Cree una matriz de datos de muestra generando números aleatorios a partir de estas dos distribuciones.
rng('default'); % for reproducibility x = [random(pd1,20,2),random(pd2,20,1)];
Las dos primeras columnas de x
contienen datos generados a partir de la primera distribución, mientras que la tercera columna contiene datos generados a partir de la segunda distribución.
Pruebe la hipótesis nula de que los datos de muestra de cada columna de x
proceden de la misma distribución. Suprima las visualizaciones de salida y genere la estructura stats
para utilizarla en pruebas posteriores.
[p,tbl,stats] = kruskalwallis(x,[],'off')
p = 3.6896e-06
tbl=4×6 cell array
{'Source' } {'SS' } {'df'} {'MS' } {'Chi-sq' } {'Prob>Chi-sq'}
{'Columns'} {[7.6311e+03]} {[ 2]} {[3.8155e+03]} {[ 25.0200]} {[ 3.6896e-06]}
{'Error' } {[1.0364e+04]} {[57]} {[ 181.8228]} {0x0 double} {0x0 double }
{'Total' } {[ 17995]} {[59]} {0x0 double } {0x0 double} {0x0 double }
stats = struct with fields:
gnames: [3x1 char]
n: [20 20 20]
source: 'kruskalwallis'
meanranks: [26.7500 18.9500 45.8000]
sumt: 0
El valor devuelto de p
indica que la prueba rechaza la hipótesis nula al nivel de significación del 1%. Puede utilizar la estructura stats
para hacer pruebas de seguimiento adicionales. El arreglo de celdas tbl
contiene los mismos datos que la tabla gráfica ANOVA, incluidas las etiquetas de columnas y filas.
Realice una prueba de seguimiento para identificar qué muestra de datos procede de una distribución diferente.
c = multcompare(stats);
Note: Intervals can be used for testing but are not simultaneous confidence intervals.
Muestre los resultados de la comparación múltiple en una tabla.
tbl = array2table(c,"VariableNames", ... ["Group A","Group B","Lower Limit","A-B","Upper Limit","P-value"])
tbl=3×6 table
Group A Group B Lower Limit A-B Upper Limit P-value
_______ _______ ___________ ______ ___________ __________
1 2 -5.1435 7.8 20.744 0.33446
1 3 -31.994 -19.05 -6.1065 0.0016282
2 3 -39.794 -26.85 -13.906 3.4768e-06
Los resultados indican que existe una diferencia significativa entre los grupos 1 y 3, por lo que la prueba rechaza la hipótesis nula de que los datos de estos dos grupos proceden de la misma distribución. Lo mismo ocurre con los grupos 2 y 3. Sin embargo, no hay una diferencia significativa entre los grupos 1 y 2, por lo que la prueba no rechaza la hipótesis nula de que estos dos grupos proceden de la misma distribución. Por lo tanto, estos resultados sugieren que los datos de los grupos 1 y 2 proceden de la misma distribución, y los datos del grupo 3 proceden de una distribución diferente.
Probar la misma distribución entre los grupos
Cree un vector, strength
, que contenga mediciones de la resistencia de vigas metálicas. Cree un segundo vector, alloy
, que indique el tipo de aleación metálica de la que está hecha la viga correspondiente.
strength = [82 86 79 83 84 85 86 87 74 82 ... 78 75 76 77 79 79 77 78 82 79]; alloy = {'st','st','st','st','st','st','st','st',... 'al1','al1','al1','al1','al1','al1',... 'al2','al2','al2','al2','al2','al2'};
Pruebe la hipótesis nula de que las mediciones de la resistencia del haz tienen la misma distribución en las tres aleaciones.
p = kruskalwallis(strength,alloy,'off')
p = 0.0018
El valor devuelto de p
indica que la prueba rechaza la hipótesis nula al nivel de significación del 1%.
Argumentos de entrada
x
— Datos de muestra
vector | matriz
Datos de muestra para la prueba de hipótesis, especificados como vector o matriz de m por n. Si x
es una matriz de m por n, cada una de las columnas de n representa una muestra independiente que contiene m observaciones mutuamente independientes.
Tipos de datos: single
| double
group
— Variable de agrupación
vector numérico | vector lógico | arreglo de caracteres | arreglo de cadenas | arreglo de celdas de vectores de caracteres
Variable de agrupación, especificada como un vector numérico o lógico, un arreglo de caracteres o cadenas o un arreglo de celdas de vectores de caracteres.
Si
x
es un vector, cada elemento degroup
identifica el grupo al que pertenece el elemento correspondiente dex
ygroup
debe ser un vector de la misma longitud quex
. Si una fila degroup
contiene un valor vacío, esa fila y la observación correspondiente dex
se ignoran. Los valoresNaN
enx
ogroup
se ignoran de forma similar.Si
x
es una matriz, cada columna dex
representa un grupo diferente y puede utilizargroup
para especificar etiquetas para estas columnas. El número de elementos degroup
y el número de columnas dex
deben ser iguales.
Las etiquetas contenidas en group
también anotan la gráfica de caja.
Ejemplo: {'red','blue','green','blue','red','blue','green','green','red'}
Tipos de datos: single
| double
| logical
| char
| string
| cell
displayopt
— Opción de visualización
'on'
(predeterminado) | 'off'
Opción de visualización, especificada como 'on'
u 'off'
. Si displayopt
es 'on'
, kruskalwallis
muestra las siguientes figuras:
Una tabla ANOVA que contenga las sumas de los cuadrados, los grados de libertad y otras cantidades calculadas a partir de las clasificaciones de los datos de
x
.Una gráfica de caja de los datos de cada columna de la matriz de datos
x
. Las gráficas de caja se basan en los valores reales de los datos en lugar de en las clasificaciones.
Si displayopt
es 'off'
, kruskalwallis
no muestra estas figuras.
Si especifica un valor para displayopt
, debe especificar también un valor para group
. Si no tiene una variable de agrupación, especifique group
como []
.
Ejemplo: 'off'
Argumentos de salida
p
— Valor p
valor de escalar en el rango [0,1]
Valor p de la prueba, devuelto como un valor de escalar en el rango [0,1]. p
es la probabilidad de observar una estadística de prueba tan extrema o más que el valor observado bajo la hipótesis nula. Los valores pequeños de p
ponen en duda la validez de la hipótesis nula.
tbl
— Tabla ANOVA
arreglo de celdas
Tabla ANOVA de resultados de la prueba, devuelta como un arreglo de celdas. tbl
incluye las sumas de cuadrados, los grados de libertad y otras cantidades calculadas a partir de las clasificaciones de los datos de x
, así como las etiquetas de las columnas y filas.
stats
— Datos de prueba
estructura
Datos de prueba, devueltos como una estructura. Puede realizar pruebas de comparación múltiple de seguimiento en pares de medianas de muestra utilizando multcompare
, con stats
como valor de entrada.
Más acerca de
Prueba de Kruskal-Wallis
La prueba de Kruskal-Wallis es una versión no paramétrica del ANOVA de un factor clásico y una ampliación de la prueba de suma de rangos de Wilcoxon a más de dos grupos. La prueba de Kruskal-Wallis es válida para datos que tienen dos o más grupos. Compara las medianas de los grupos de datos en x
para determinar si las muestras proceden de la misma población (o, equivalentemente, de poblaciones diferentes con la misma distribución).
La prueba de Kruskal-Wallis utiliza clasificaciones de los datos, en lugar de valores numéricos, para calcular las estadísticas de la prueba. Encuentra las clasificaciones ordenando los datos de menor a mayor en todos los grupos y tomando el índice numérico de este orden. La clasificación de una observación empatada es igual a la clasificación media de todas las observaciones empatadas con ella. La estadística F utilizada en el ANOVA de un factor clásico se sustituye por una estadística de chi-cuadrado y el valor p mide la significación de la estadística de chi-cuadrado.
La prueba de Kruskal-Wallis asume que todas las muestras proceden de poblaciones que tienen la misma distribución continua, aparte de las ubicaciones posiblemente diferentes debidas a efectos de grupo, y que todas las observaciones son mutuamente independientes. Por el contrario, el ANOVA de un factor clásico sustituye el primer supuesto por el supuesto más estricto de que las poblaciones tienen distribuciones normales.
Historial de versiones
Introducido antes de R2006a
Comando de MATLAB
Ha hecho clic en un enlace que corresponde a este comando de MATLAB:
Ejecute el comando introduciéndolo en la ventana de comandos de MATLAB. Los navegadores web no admiten comandos de MATLAB.
Select a Web Site
Choose a web site to get translated content where available and see local events and offers. Based on your location, we recommend that you select: .
You can also select a web site from the following list:
How to Get Best Site Performance
Select the China site (in Chinese or English) for best site performance. Other MathWorks country sites are not optimized for visits from your location.
Americas
- América Latina (Español)
- Canada (English)
- United States (English)
Europe
- 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)