Estoy tratando de encontrar una manera de obtener la fila de un marco de datos usando un índice que tenga el mismo resultado que usar data_file.iterrows (). Intenté el siguiente código, pero no son idénticos. ¿Hay alguna forma de hacer esto? ¡Gracias!
for row in data_file.iterrows():
print(row == data_file.iloc[0])
print(row)
print(data_file.iloc[0])
break
2 respuestas
El valor de la serie correspondiente está en index1, ¿eso ayuda?
Documentos: https://pandas.pydata.org/pandas- docs / stable / generate / pandas.DataFrame.iterrows.html
DataFrame.iterrows () [fuente]
Itere filas de DataFrame como pares (índice, Serie ).
print(row[1] == data_file.iloc[0])
Otra solución:
for ind, row in data_file.iterrows():
Porque iterrows devuelve una tupla que consiste en el índice de la fila y la fila misma e iloc la fila.
print(type(row))
<class 'tuple'>
print(type(pl0.iloc[0]))
<class 'pandas.core.series.Series'>
print(type(row[1]))
<class 'pandas.core.series.Series'>
Puedes usar la habilidad de Python para desempacar tuplas:
for index, row in data_file.iterrows():
¿Por qué no estás usando iloc directamente, de todos modos? No se recomienda usar iterrows, debido a su impacto negativo en el rendimiento.
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.