En el análisis de datos y las estadísticas matemáticas, a menudo es necesario calcular la media, la mediana, la varianza, la desviación estándar, el coeficiente de correlación y la covarianza de la matriz. Estos datos pueden reflejar el tamaño general, la dispersión y la correlación de un conjunto de números. Estos datos son indicadores importantes para el procesamiento de datos.
Tabla de contenido
1. Promedio
El promedio es la media aritmética de un conjunto de datos.La solución general es sumar los valores de todos los elementos en un conjunto de datos y luego dividir por el número de todos los elementos. Sin embargo, MATLAB proporciona la función de media para calcular la media de los datos, y el formato de la llamada es el siguiente (donde V representa un vector y A representa una matriz):
- mean(V): Calcula la media aritmética de todos los datos en el vector X.
- mean(A): devuelve un vector fila, y cada elemento del vector fila es la media aritmética de cada columna de la matriz A.
- mean(A,num): cuando el valor de num es 1, la función de esta función es la misma que la de mean(A), y devuelve un vector fila, y cada elemento del vector fila corresponde a la media aritmética de cada columna en la matriz Valor; cuando num es 2, se devuelve un vector columna, y cada elemento del vector columna corresponde a la media aritmética de cada fila en la matriz A.
- mean(mean(A)): Calcula la media de todos los elementos de la matriz como un todo.
(1) Lo siguiente calcula el valor medio aritmético de un vector, por ejemplo, calcula el valor medio aritmético del vector V=[23,56,89,34,12,34,54,67] y utiliza el código MATLAB para resolverlo, el código se ve así:
V=[23,56,89,34,12,34,54,67];
B=mean(V)
Los resultados del cálculo se pueden obtener: el valor de B es 46.125.
(2) Si se calcula la media aritmética de cada columna de una matriz, la matriz queda de la siguiente manera:
El código para calcular la media aritmética de cada columna por MATLAB es el siguiente:
A=[83,38,71,58;89,72,64,33;42,12,57,68;34,71,92,48];
B=mean(A)
El vector de fila devuelto resultante se ve así:
B =
62.0000 48.2500 71.0000 51.7500
O como se mencionó en el punto 3 anterior, el mismo valor también se puede obtener usando la media (A,1), el código es el siguiente:
A=[83,38,71,58;89,72,64,33;42,12,57,68;34,71,92,48];
B=mean(A,1)
El resultado es también:
B =
62.0000 48.2500 71.0000 51.7500
(3) Si desea calcular el valor promedio algorítmico de cada fila en la matriz, puede usar la media (A,2) para obtenerlo; para la misma matriz, el código para calcular el valor promedio algorítmico de cada fila es como sigue:
A=[83,38,71,58;89,72,64,33;42,12,57,68;34,71,92,48];
B=mean(A,2)
El resultado de la operación es el siguiente:
B =
62.5000
64.5000
44.7500
61.2500
(4) Si desea calcular la media aritmética de todos los elementos de la matriz, puede usar la media (media (A)), el código es el siguiente:
A=[83,38,71,58;89,72,64,33;42,12,57,68;34,71,92,48];
B=mean(mean(A))
El resultado final de la carrera fue 58.25.
Es más conveniente calcular el valor promedio de los elementos de la matriz a través de la media de MATLAB, y puede tener ciertas ventajas al procesar matrices con más datos.
2, mediana
La mediana se refiere al número en el medio de un conjunto de datos que se ordena de acuerdo con el tamaño del valor. Si el número de todos los números es impar, entonces el número del medio después de ordenar es la mediana. Si el número de todos los números es impar Si es un número par, entonces la mediana es el promedio de los dos elementos del medio después de la clasificación. La mediana puede reflejar el índice medio de un conjunto de datos en las estadísticas. La función mediana se proporciona en MATLAB para resolver la mediana (donde V representa un vector y A representa una matriz).El uso es el siguiente:
- mediana(V): Obtiene la mediana de un conjunto de vectores.
- mediana(A): Devuelve un vector fila, donde cada valor del vector fila corresponde a la mediana de cada columna en la matriz A.
- mediana(A, num): Cuando num es 1, tiene la misma función que mediana(A), y se obtiene un vector fila, y cada vector fila es la mediana de la columna correspondiente en la matriz; cuando num es 2, lo que se obtiene es un vector columna, y cada elemento del vector columna es la mediana de la fila correspondiente en la matriz.
- mediana(mediana(A)): Devuelve un número que calcula la mediana del vector fila compuesto por la mediana de cada columna de la matriz A.
(1) Por ejemplo, para el vector V anterior en este artículo para resolver la operación mediana, el código es el siguiente:
V=[23,56,89,34,12,34,54,67];
B=median(V)
Calcula que la mediana de todos los elementos de este vector sea 44.
(2) Si se utiliza la función mediana para resolver la mediana de cada columna en la matriz A, el código es el siguiente:
A=[83,38,71,58;89,72,64,33;42,12,57,68;34,71,92,48];
B=median(A)
El resultado de la operación es el siguiente:
B =
62.5000 54.5000 67.5000 53.0000
o como se muestra a continuación:
A=[83,38,71,58;89,72,64,33;42,12,57,68;34,71,92,48];
B=median(A,1)
En este momento, el resultado de usar este método de escritura es el mismo que el de la mediana (A).
(3) Si desea calcular la mediana de todos los elementos en cada fila en una matriz, puede usar la mediana (A,2), que devuelve un vector de columna, y cada elemento del vector corresponde a cada La mediana de una fila . El código se ve así:
A=[83,38,71,58;89,72,64,33;42,12,57,68;34,71,92,48];
B=median(A,2)
El resultado después de ejecutar es el siguiente:
B =
64.5000
68.0000
49.5000
59.5000
(4) Cuando el resultado devuelto por mediana(mediana(A)) es un valor, cabe señalar aquí que el número devuelto por esta función no es la mediana de toda la matriz, sino un vector compuesto por la mediana de cada columna de la matriz Tome la mediana de nuevo. Por ejemplo:
A=[83,38,71,58;89,72,64,33;42,12,57,68;34,71,92,48];
B=median(median(A))
El resultado final de la operación es 58, 5. A través de la operación real, la mediana de la matriz se puede obtener como 60, y el resultado del cálculo de 58, 5 es el vector fila [62, 5, 54, 5, 67, 5, 53, 0] compuesto por la mediana de cada columna de la matriz Mediana, después del cálculo, la mediana del vector fila es 58.5, solo para verificar la conclusión.
3. Desviación estándar
En estadística matemática, la desviación estándar puede representar el grado de dispersión de un conjunto de datos. Cuanto menor sea la desviación estándar, menor será el grado de dispersión de este conjunto de datos, y cuanto mayor sea la desviación estándar, mayor será el grado de dispersión. de este conjunto de datos.
En MATLAB, hay dos fórmulas para resolver la desviación estándar y la fórmula para la diferencia muestral general es la siguiente:
La fórmula para la desviación estándar de la muestra es la siguiente:
La función para calcular la desviación estándar en MATLAB es std. El método de llamada de la función std es std(A,flag,num).Cuando num=1, se calcula la desviación estándar de cada columna de la matriz, cuando num=2, la desviación estándar de cada fila de la matriz es calculado; cuando bandera Cuando = 0, es la desviación estándar calculada de acuerdo con la fórmula para resolver la desviación estándar. Cuando bandera = 1, es la desviación estándar calculada de acuerdo con la fórmula de desviación estándar de la muestra.
Para la fórmula A anterior, use la función std para calcular la desviación estándar de la matriz en cuatro situaciones diferentes. El código es el siguiente:
A=[83,38,71,58;89,72,64,33;42,12,57,68;34,71,92,48];
Avg=mean(mean(A))
std1=std(A,1,1)
std2=std(A,1,2)
std3=std(A,0,1)
std4=std(A,0,2)
El resultado de la operación es el siguiente:
Avg =
58.2500
std1 =
24.2590 25.0037 13.0958 12.9301
std2 =
16.6808
20.3039
21.0401
22.1289
std3 =
28.0119 28.8718 15.1217 14.9304
std4 =
19.2614
23.4450
24.2951
25.5522
Los cuatro resultados que se muestran arriba corresponden a cuatro situaciones diferentes de la función estándar.
4. Variación
En estadística matemática, además de la desviación estándar, la varianza también se puede utilizar para representar el grado de dispersión de los datos. Cuanto mayor sea la varianza, mayor será la dispersión del grupo de datos, y cuanto menor sea la varianza, menor será la dispersión del grupo de datos. La función var se proporciona en MATLAB para calcular la varianza de un conjunto de datos. La varianza es el cuadrado de la desviación estándar. Al igual que la desviación estándar, la varianza también tiene cuatro formas diferentes, var(A, flag, num). Cuando flag=0, significa la varianza calculada por el cuadrado de la fórmula de la desviación estándar. Cuando marca Cuando =1, significa la varianza calculada por el cuadrado de la fórmula de desviación estándar de la muestra Cuando num=1, se calcula la varianza de cada columna de la matriz Cuando num=2, la varianza de cada fila de la matriz se calcula.
Por ejemplo, para la matriz anterior, el código para calcular la varianza de cuatro casos diferentes es el siguiente:
A=[83,38,71,58;89,72,64,33;42,12,57,68;34,71,92,48];
Avg=mean(mean(A))
var1=var(A,1,1)
var2=var(A,1,2)
var3=var(A,0,1)
var4=var(A,0,2)
El resultado después de la operación es el siguiente:
var1 =
588.5000 625.1875 171.5000 167.1875
var2 =
278.2500
412.2500
442.6875
489.6875
var3 =
784.6667 833.5833 228.6667 222.9167
var4 =
371.0000
549.6667
590.2500
652.9167
5. Coeficiente de correlación
En matemáticas, el coeficiente de correlación representa un indicador del grado de correlación entre los datos. Cuando el coeficiente de correlación es mayor, el grado de correlación es mayor. El coeficiente de correlación es un concepto relativo, y el rango está entre [-1,1] . . La fórmula para resolver el coeficiente de correlación es la siguiente:
Utilice la función corrcoef y la función corr en MATLAB para calcular el coeficiente de correlación, donde el formato de llamada es el siguiente:
- corr(x,y): Devuelve la matriz de coeficientes de correlación entre las columnas de las dos matrices, donde x e y deben ser vectores columna.
- corrcoef(x,y): Devuelve una matriz de coeficientes de correlación. Si xey son matrices, corrcoef(x,y) se convertirá en una secuencia antes del cálculo.
Por ejemplo, el siguiente ejemplo:
A=[43,56,36,75,34,23,45];
B=[76,45,34,24,94,53,71];
[r,p]=corr(A',B')
x=corrcoef(A,B)
El resultado después de ejecutar es el siguiente:
r =
-0.5058
p =
0.2468
x =
1.0000 -0.5058
-0.5058 1.0000
Se puede ver a partir de los datos anteriores que el coeficiente de correlación es -0.5058. La función corrcoef devuelve la matriz de coeficientes de correlación.
6. Covarianza
La covarianza es un concepto estadístico que se utiliza para medir el error general entre dos variables. Si dos variables tienen una cierta correlación, utilice la covarianza para medir el impacto. La fórmula para calcular la covarianza es la siguiente:
La función cov se proporciona en MATLAB para calcular la covarianza entre dos series de datos relacionados. El método básico de llamada de la función cov en MATLAB es el siguiente (donde V representa un vector y A representa una matriz):
- cov(V): Devuelve la varianza del vector.
- cov(A): Devuelve una matriz que utiliza cada columna como variable y cada fila es una matriz de muestras. El número en la diagonal es la varianza de cada columna, y el número fuera de la diagonal es la covarianza.
- cov(X,Y): Calcula la covarianza entre X e Y, donde X e Y deben ser del mismo tamaño.
(1) Cuando V es un vector, verifique si el valor devuelto es una varianza, por ejemplo:
A=[34,45,73,32,65,72];
B=var(A)
C=cov(A)
El resultado se ve así:
B =
353.9000
C =
353.9000
Como puede verse en los resultados anteriores, si se usa la función cov para un vector, el resultado del cálculo y la varianza son los mismos.
(2) Cuando A es una matriz, como en el siguiente ejemplo:
A=[34,45,73;54,37,81;44,19,15];
B=cov(A)
C=var(A)
El resultado se ve así:
B =
1.0e+03 *
0.1000 -0.0400 0.0400
-0.0400 0.1773 0.4387
0.0400 0.4387 1.2973
C =
1.0e+03 *
0.1000 0.1773 1.2973
Por comparación, se puede encontrar que la parte diagonal de la matriz obtenida por la función cov es la varianza de cada columna de la matriz, mientras que la parte no diagonal calcula la covarianza.
(3) Calcular la covarianza entre dos matrices, como en el siguiente ejemplo:
A=[34,45,54;37,62,81;19,15,44];
B=[45,64,69;73,74,79;84,85,86];
C=cov(A,B)
Los resultados de ejecución son los siguientes:
C =
425.7778 -18.8611
-18.8611 168.9444
cov(X,Y) en realidad devuelve una convolución lineal entre dos matrices A partir de los resultados anteriores, se puede ver que existe una correlación negativa entre los dos conjuntos de datos.