Ejemplo de marco de datos
df = pd.DataFrame(np.random.randint(2200, 3300, 50), index=[np.random.randint(0,6, 50)] ,columns=list('A'))
A continuación se muestra una muestra de cómo se verían los datos.
A
5 2393
4 2421
0 3038
5 2914
4 2559
4 2314
5 3006
3 2553
0 2642
3 2441
3 2512
0 2412
Lo que me gustaría hacer es eliminar los primeros n (usemos 2 para este ejemplo) registros de índice. Entonces, a partir del ejemplo de datos anterior, se convertiría en ...
A
4 2314
5 3006
3 2512
0 2412
Cualquier orientación aquí sería apreciada. No he podido conseguir nada para trabajar.
2 respuestas
Use tail
con -2
s.groupby(level=0, group_keys=False).apply(pd.DataFrame.tail, n=-2)
A
0 2412
3 2512
4 2314
5 3006
Para realmente clavarlo
s.groupby(level=0, group_keys=False, sort=False).apply(pd.DataFrame.tail, n=-2)
A
5 3006
4 2314
0 2412
3 2512
Si entiendo su pregunta, desea un nuevo marco de datos que elimine las primeras n
filas de su marco de datos. Si eso es lo que desea, restablecería el índice, luego lo eliminaría según el índice predeterminado de los pandas y luego volvería a colocar el índice original. Así es como puedes hacer eso.
df = pd.DataFrame(data=np.random.randint(2200, 3300, 50),
index=np.random.randint(0,6, 50),
columns=list('A'))
n = 5
print(df.head(n * 2))
df_new = df.reset_index().drop(range(n)).set_index('index')
print(df_new.head(n))
Preguntas relacionadas
Nuevas preguntas
python
Python es un lenguaje de programación multipropósito, de tipificación dinámica y de múltiples paradigmas. Está diseñado para ser rápido de aprender, comprender y usar, y hacer cumplir una sintaxis limpia y uniforme. Tenga en cuenta que Python 2 está oficialmente fuera de soporte a partir del 01-01-2020. Aún así, para preguntas de Python específicas de la versión, agregue la etiqueta [python-2.7] o [python-3.x]. Cuando utilice una variante de Python (por ejemplo, Jython, PyPy) o una biblioteca (por ejemplo, Pandas y NumPy), inclúyala en las etiquetas.