Meer
Kolom verwijderen uit pandas DataFrame
Bij het verwijderen van een kolom in een DataFrame gebruik ik:
del df['column_name']
En dit werkt fantastisch. Waarom'kan ik niet het volgende gebruiken?
del df.column_name
Aangezien je de kolom/reeks kunt benaderen als df.column_name
, verwacht ik dat dit werkt.
1121
3
De beste manier om dit in pandas te doen is door
drop
te gebruiken:waarbij
1
het as nummer is (0
voor rijen en1
voor kolommen).Om de kolom te verwijderen zonder
df
opnieuw te hoeven toewijzen kun je doen:Tenslotte, om te laten vallen op kolom nummer in plaats van op kolom label, probeer dit om bijvoorbeeld de 1e, 2e en 4e kolom te verwijderen:
Zoals je hebt geraden, is de juiste syntaxis
Het is moeilijk om
del df.column_name
te laten werken, simpelweg als gevolg van syntactische beperkingen in Python.del df[naam]
wordt door Python onder de deksels vertaald naardf.__delitem__(naam)
.Het is een goede gewoonte om altijd de
[]
notatie te gebruiken. Een van de redenen is dat attribuut notatie (df.column_name
) niet werkt voor genummerde indexen: