Come dovrei cancellare le righe da un DataFrame in Python-Pandas?
Modifica 27 settembre 2016: Aggiunto il filtraggio tramite indici interi
Ci sono 2 modi per rimuovere le righe in Python:
- Rimuovere le righe in base all'indice di riga
- Rimuovere le righe che non soddisfano i criteri desiderati
Ecco le prime 10 righe del dataset Iris che verranno utilizzate per illustrare.
Rimuovere le righe in base all'indice di riga
Utilizzare il metodo DataFrame 'drop' per rimuovere righe specifiche in base alla loro posizione nel DataFrame. In the example below, the rows 1,3,5, and 7 are removed.
- iris.drop(iris.index[[1,3,5,7]])
Selecting specific rows that meet the desired criteria
Use the DataFrame ‘ix’ method to remove specific rows or to select only the rows that meet a certain criteria. Nell'esempio qui sotto, sono inclusi solo i fiori con una lunghezza del sepalo maggiore o uguale a 5.
- iris.ix[iris['sepal length (cm)'] >= 5]
Rimuovere le righe che non soddisfano i criteri desiderati
Lo stesso risultato può essere ottenuto rimuovendo le righe che non soddisfano il criterio di avere una lunghezza del sepalo maggiore o uguale a 5. Ricordate le parentesi!
- iris.ix[~(iris['lunghezza del sepalo (cm)'] < 5)]
Edits:
Rimuovere le righe che non soddisfano i criteri desiderati usando gli indici di colonna
A parte le etichette di colonna, gli indici di colonna possono anche essere usati per filtrare le righe. This can be done with iloc, which is the pandas method for index location. the following code returns the set of values where column 0 (sepal length) is greater than or equal to 7.
- iris.ix[iris.iloc[,:0] >= 7,]
Hope that answers your question!
Articoli simili
- Come selezionare tutte le righe in cui una cella della colonna ha un valore specifico con Excel e VBA
- Come regolare l'altezza delle righe in Excel
- Come inserire una formula a righe alterne in excel
- Quante righe e colonne ci sono nella prima pagina di Excel?
- Qual è la ragione dietro un foglio di calcolo Excel che ha 1048576 righe?