Sunday, 19 December 2021 17:45

Algoritmo Media Muestral en R

Written by
Rate this item
(0 votes)

Queremos un algortimo en R que partiendo de la secuencia del 1 al 20 (población) tome todos los posibles subconjuntos de tamaño 5 (muestras).

Debemos calcular la media de la secuencia del 1 al 20 (población) y además las medias de cada uno de los subconjuntos (muestras).

Luego debemos calcular la media de las medias y compararla con la media poblacional.

#Creamos una función que calcule las medias de todas las muestras
muestras_medias <- function(n){
  A=1:n #A contiene la secuencia del 1 al n
  m=5 # m es el número de elementos de los subconjuntos
  cuenta = 0 #contador para saber cuantas muestras tomamos
  suma = 0 #Un acumulador para sumar las medias
  M=-1
  for (i1 in seq(1,n-m+1,1)) {
    for (i2 in seq(i1+1,n-m+2,1)) {
      for (i3 in seq(i2+1,n-m+3,1)) {
        for (i4 in seq(i3+1,n-m+4,1)) {
          for (i5 in seq(i4+1,n-m+5,1)) {
            B = c(i1,i2,i3,i4,i5) # formamos el vector B como subconjunto de A
            media = mean(B) # calculamos la media de B
            suma = suma + media # acumulamos la media
            cuenta = cuenta + 1 # incrementamos el contador
            if (length(M)==1 && M<0) M = media
            else M = c(M,media)
  }}}}}#5for
  hist(M)
  suma/cuenta
}

n=20
A=1:n
m1 = mean(A)
m1
m2 = muestras_medias(n)
m2
if (m1 == m2) print("Se cumple la propiedad")

 

El resultado que se obtiene es sencillo:

m1 (media poblacional) es 10.5

m2 (Valor esperado de la media muestral) también es 10.5

por lo tanto nos muestra que "Se cumple la propiedad".

Read 140 times Last modified on Thursday, 23 December 2021 18:56