Ir al contenido
  1. Posts/

La Regla que Todos Omiten: loc vs iloc en Pandas

··249 palabras·2 mins·

🐼 ¿Usás loc o iloc en Pandas? La diferencia es más simple de lo que parece.

Si trabajás con DataFrames en Python, seguramente te confundiste alguna vez entre estos dos operadores. La regla es sencilla:

  • loc → selecciona por etiquetas (nombre del índice o columna)
  • iloc → selecciona por posición entera (como indexar una lista)

💡 Ejemplos prácticos:

# loc: por etiqueta
df.loc[102]             # fila con índice 102
df.loc[101:103, 'math'] # rango de etiquetas, incluye el final

# iloc: por posición
df.iloc[1]              # segunda fila (posición 1)
df.iloc[0:3, [0, 1, 3]] # filas 0–2, columnas por posición

📌 ¿Cuándo usar cada uno?

SituaciónUsar
Índices con significado (ID, nombre)loc
Quiero las primeras N filasiloc
Índices duplicados o desordenadosiloc
Filtrado booleanoloc

⚠️ Diferencia en slicing:

  • loc[101:103] → incluye la fila 103
  • iloc[0:3] → excluye la posición 3 (igual que las listas de Python)

💡 Explicación en pocas palabras
#

loc trabaja con las etiquetas que ves en el índice del DataFrame, mientras que iloc trabaja con las posiciones numéricas (0, 1, 2…), como si fuera una lista. Si tu índice es numérico y empieza desde 0, pueden parecer iguales, pero si cambiás el índice, loc y iloc pueden dar resultados completamente distintos.

Más información en el link 👇

También publicado en LinkedIn.
Juan Pedro Bretti Mandarano
Autor
Juan Pedro Bretti Mandarano