Les comparto mis apuntes de clase en deepnote https://deepnote.com/@a_mas/Funciones-de-Muestreo-en-Python-5e3efaeb-d12c-472c-96b7-bb34e377b3e7
Fundamentos de estadÃstica inferencial
EstadÃstica inferencial vs. descriptiva
EstadÃsticos principales
Poblaciones normales
Introducción al muestreo y teorema central del lÃmite
Funciones de muestreo en Python
Muestreo estratificado en Python
Quiz: Fundamentos de estadÃstica inferencial
EstadÃsticos y cálculos
La media muestral
Varianza y desviación estándar muestral
Varianza y desviación estándar muestral en Python
Intervalos de confianza
Cálculo de intervalo de confianza
Cálculo de intervalo de confianza en Python
Quiz: EstadÃsticos y cálculos
Pruebas de hipótesis y validación
Pruebas de hipótesis
Tipos de pruebas de hipótesis
Tipos de errores
Pruebas de hipótesis en Python: t de Student
Pruebas de hipótesis en Python: Pearson y ANOVA
Bootstrapping
Bootstrapping en Python
Validación cruzada
Validación cruzada en Python
Quiz: Pruebas de hipótesis y validación
Cierre del curso
Conclusiones
No tienes acceso a esta clase
¡Continúa aprendiendo! Únete y comienza a potenciar tu carrera
Aportes 14
Preguntas 3
Les comparto mis apuntes de clase en deepnote https://deepnote.com/@a_mas/Funciones-de-Muestreo-en-Python-5e3efaeb-d12c-472c-96b7-bb34e377b3e7
columnas ( delgación, perimetro, tipo)
filas ( step:5)
Para hacer el Systematic_sample no era necesaria la función extra, solo con la sintaxis de iloc era suficiente, por ejemplo
Systematic_sample = econdata.iloc[::3,:]
De los indices desde el primero al ultimo en pasos de 3, y de las columnas todas
Dejo mi aporte de la lectura del archivo, por si alguien usa deepnote
uploaded = io.open("/work/data/economia-y-turismo-en-el-centro-historico.csv", "rb", buffering=0)
econdata = pd.read_csv(uploaded)
Me saqué las ganas de hacer hasta el 100 y que vaya de 5 en 5:
def systematic_sampling (econodata,step):
indexes = np.arange(0,101,step=step)
systematic_sample = econodata.iloc[indexes]
return systematic_sample
systematic_sample = systematic_sampling(econodata,5)
systematic_sample
Hola,
Si usan VsCode, teniendo el archivo en la raiz, sólo debes hacer:
econdata= pd.read_csv('economia-y-turismo-en-el-centro-historico.csv')
Me gusto, muy bueno para iniciar, con esta función se puede crear un menú para captura automática de datos y hacer el muestreo
Si por alguna razón les aparece un error como este al tratar de importar el archivo, fijensé de ir a configuración del Chrome, a la parte de las cookies y permitir cookies de terceros en Google Colab.
Aquà les dejo el reto de esta clase utilizando la función .iloc, esto lo hace mucho más simplificado.
def systematic_sampling_2(data, start, end, step):
return data.iloc[start:end:step,:]
systematic_sample_2 = systematic_sampling_2(econdata, 1, 100, 3)
print(systematic_sample_2.shape[0])
systematic_sample_2.head()
Resultado:
Comparto la función incluyendo los parámetros que permiten definir el inicio y el final del muestreo:
def systematic_sampling(econdata, step, start=0, final=len(econdata) ):
indexes = np.arange(start, final, step=step)
systematic_sample = econdata.iloc[indexes]
return systematic_sample
En Python, existen varias funciones y módulos que se utilizan para realizar muestreos de datos. Algunas de las funciones más comunes son:
random.sample(): Esta función se utiliza para seleccionar una muestra aleatoria de elementos de una lista o conjunto.
random.choices(): Esta función se utiliza para seleccionar elementos aleatorios de una lista o conjunto, con o sin reemplazo, y con o sin pesos.
pandas.DataFrame.sample(): Esta función se utiliza para seleccionar una muestra aleatoria de un DataFrame de pandas.
numpy.random.randint(): Esta función se utiliza para generar números enteros aleatorios dentro de un rango especÃfico.
numpy.random.rand(): Esta función se utiliza para generar números aleatorios flotantes dentro de un rango especÃfico.
numpy.random.permutation(): Esta función se utiliza para generar una permutación aleatoria de una lista o conjunto.
numpy.random.choice(): Esta función se utiliza para elegir elementos aleatorios de una lista o conjunto, con o sin reemplazo, y con o sin pesos.
Es importante mencionar que todas estas funciones son parte de la librerÃa estandar de python o de paquetes como numpy o pandas, estas funciones son muy utilizadas en el ámbito de análisis de datos, para realizar pruebas estadÃsticas, evaluar modelos, entre otras.
mi aporte espero les sirva de mucho
def systematic_sampling(df ,step):
df_ganador=df.iloc[0:len(df):step]
return df_ganador
systematic_sampling(encondata_df,3)
Realice un par de modificaciones a la función para que permita definir tanto en punto de inicio como el punto final.
def muestra_sistematica(data,
step,
punto_inicio=0,
punto_fin=None):
if(punto_fin is None):
punto_fin = data.shape[0]
indexes = np.arange(punto_inicio, punto_fin, step=step)
sample = data.iloc[indexes]
return sample
Comparto mi solución para cambiar a la función el inicio y fin 😃
def systematic_sampling(data, step, start = 0, stop = None):
if stop == None: stop = len(data)
indexes = np.arange(start, stop, step = step)
systematic_sample = data.iloc[indexes]
return systematic_sample
systematic_sample = systematic_sampling(econdata, 3, stop = 30)
La función ya acepta cualquier base de datos, pasos, inicio y fin.
¿Quieres ver más aportes, preguntas y respuestas de la comunidad?
o inicia sesión.