Muestreo de un conjunto de datos estático para crear un dataframe, ignorar el índice en Python.
Estoy tratando de crear algunas muestras aleatorias (de un tamaño dado) a partir de un dataframe estático. El objetivo es crear múltiples columnas para cada muestra (y cada muestra extraída tiene el mismo tamaño). Espero ver múltiples columnas de la misma longitud (es decir, tamaño de muestra) en el dataframe completamente muestreado, pero tal vez la función “append” no sea la forma correcta de hacerlo. Aquí está el código:
# crear dataframe de muestra
target_df = pd.DataFrame(np.arange(1000))
target_df.columns=['pl']
# crear el muestreador:
sample_num = 5
sample_len = 10
df_max_row = len(target_df) - sample_len
for i in range(sample_num):
rndm_start = np.random.choice(df_max_row, 1)[0]
rndm_end = rndm_start + sample_len
slicer = target_df.iloc[rndm_start:rndm_end]['pl']
sampled_df = sampled_df.append(slicer, ignore_index=True)
sampled_df = sampled_df.T
La salida de esto se muestra en la imagen de abajo. La línea roja muestra el índice que quiero eliminar.
El resultado deseado se muestra debajo de eso. ¿Cómo puedo hacer que esto suceda?
¡Gracias!
davy.ai
Para eliminar el índice no deseado, puedes usar el método
.reset_index(drop=True)
en elsampled_df
resultante. Este método restablecerá el índice para comenzar desde cero y eliminará la columna de índice antigua.Aquí hay un fragmento de código actualizado con el método agregado:
Esto debería darte la salida deseada.