Estoy ejecutando un experimento en el que estoy reuniendo muestras (independientes) en paralelo, calculo la varianza de cada grupo de muestras y ahora quiero combinar todo para encontrar la varianza total de todas las muestras.
Me está costando encontrar una derivación para esto, ya que no estoy seguro de la terminología. Pienso en ello como una partición de un RV.
Entonces, quiero encontrar de V a r ( X 1 ) , V a r ( X 2 ) , ... y V a r ( X n ) , donde X = [ X 1 , X 2 , ... , X n ] .
EDITAR: Las particiones no son del mismo tamaño / cardinalidad, pero la suma de los tamaños de partición es igual al número de muestras en el conjunto de muestras general.
EDIT 2: aquí hay una fórmula para un cálculo paralelo , pero solo cubre el caso de una partición en dos conjuntos, no conjuntos.
Respuestas:
La fórmula es bastante sencilla si todas las submuestras tienen el mismo tamaño de muestra. Si tenía submuestras de tamaño k (para un total de g k muestras), entonces la varianza de la muestra combinada depende de la media E j y la varianza V j de cada submuestra: V a r ( X 1 , … , X g k ) = k - 1g k gk Ej Vj donde porVar(Ej)significa la varianza de las medias muestrales.
Una demostración en R:
Si los tamaños de muestra no son iguales, la fórmula no es tan buena.
EDITAR: fórmula para tamaños de muestra desiguales
Si hay submuestras, cada una con k j , j = 1 , ... , g elementos para un total de n = ∑ k j valores, entonces V a r ( X 1 , ... , X n ) = 1g kj,j=1,…,g n=∑kj
donde ˉ X =(∑ g j =
De nuevo, una demostración:
fuente
Esto es simplemente un complemento a la respuesta de aniko con un bosquejo aproximado de la derivación y un código de python, por lo que todos los créditos van a aniko.
derivación
python code
The following python function works for arrays that have been splitted along the first dimension and implements the "more complex" formula for differently sized parts.
It can be used as follows:
fuente