Borrar la columna del DataFrame de pandas
Al borrar una columna en un DataFrame uso:
del df['column_name']
Y esto funciona muy bien. ¿Por qué no puedo usar lo siguiente?
del df.column_name
Como puedes acceder a la columna/serie como df.nombre_columna
, espero que esto funcione.
1121
3
La mejor manera de hacer esto en pandas es utilizar
drop
:donde
1
es el número del eje (0
para las filas y1
para las columnas.)Para eliminar la columna sin tener que reasignar
df
puedes hacerPor último, para eliminar por la columna número en lugar de por la columna etiqueta, prueba esto para eliminar, por ejemplo, la 1ª, 2ª y 4ª columnas:
Como has adivinado, la sintaxis correcta es
Es difícil hacer que
del df.column_name
funcione simplemente como resultado de las limitaciones sintácticas de Python.del df[nombre]
es traducido por Python comodf.__delitem__(nombre)
bajo cuerda.Es una buena práctica utilizar siempre la notación
[]
. Una de las razones es que la notación de atributos (df.nombre_columna
) no funciona para los índices numerados: