Как удалить строки по индексу в pandas (с примерами)
Вы можете использовать следующий синтаксис для удаления строки из DataFrame pandas по номеру индекса:
#drop first row from DataFrame df = df. drop (index= 0 )
И вы можете использовать следующий синтаксис для удаления нескольких строк из DataFrame pandas по индексным номерам:
#drop first, second, and fourth row from DataFrame df = df. drop ( index=[0,1,3 ] )
Если ваш DataFrame имеет строки в качестве значений индекса, вы можете просто передать имена в виде строк для удаления:
df = df. drop (index=[' first ', ' second ', ' third '])
Следующие примеры показывают, как на практике удалять строки по индексу.
Пример 1: удалить строку по индексу
Следующий код показывает, как удалить вторую строку в DataFrame pandas:
import pandas as pd #createDataFrame df = pd. DataFrame ({' team ': ['Mavs', 'Lakers', 'Spurs', 'Cavs'], ' first ': ['Dirk', 'Kobe', 'Tim', 'Lebron'], ' last ': ['Nowitzki', 'Bryant', 'Duncan', 'James'], ' points ': [26, 31, 22, 29]}) #view DataFrame df team first last points 0 Mavs Dirk Nowitzki 26 1 Lakers Kobe Bryant 31 2 Spurs Tim Duncan 22 3 Cavs LeBron James 29 #drop second row from DataFrame df = df. drop (index= 1 ) #view resulting dataFrame df team first last points 0 Mavs Dirk Nowitzki 26 2 Spurs Tim Duncan 22 3 Cavs LeBron James 29
Пример 2: удалить несколько строк по индексу
Следующий код показывает, как удалить несколько строк в DataFrame pandas по индексу:
import pandas as pd #createDataFrame df = pd. DataFrame ({' team ': ['Mavs', 'Lakers', 'Spurs', 'Cavs'], ' first ': ['Dirk', 'Kobe', 'Tim', 'Lebron'], ' last ': ['Nowitzki', 'Bryant', 'Duncan', 'James'], ' points ': [26, 31, 22, 29]}) #view DataFrame df team first last points 0 Mavs Dirk Nowitzki 26 1 Lakers Kobe Bryant 31 2 Spurs Tim Duncan 22 3 Cavs LeBron James 29 #drop first, second, and fourth row from DataFrame df = df. drop ( index=[0,1,3 ] ) #view resulting dataFrame df team first last points 2 Spurs Tim Duncan 22
Пример 3. Удаление строк, если индекс является строкой
Следующий код показывает, как удалить строки из DataFrame pandas по индексу, если индекс представляет собой строку, а не число:
import pandas as pd
#createDataFrame
df = pd. DataFrame ({' team ': ['Mavs', 'Lakers', 'Spurs', 'Cavs'],
' last ': ['Nowitzki', 'Bryant', 'Duncan', 'James'],
' last ': ['Nowitzki', 'Bryant', 'Duncan', 'James'],
' points ': [26, 31, 22, 29]},
index=['A', 'B', 'C', 'D'])
#view DataFrame
df
team first last points
A Mavs Dirk Nowitzki 26
B Lakers Kobe Bryant 31
C Spurs Tim Duncan 22
D Cavs Lebron James 29
#remove rows with index values 'A' and 'C'
df = df. drop (index=[' A ',' C '])
#view resulting DataFrame
df
team first last points
B Lakers Kobe Bryant 31
D Cavs Lebron James 29
Дополнительные ресурсы
Как удалить столбцы по индексу в Pandas
Pandas: как удалить строки, содержащие определенную строку
Pandas: как удалить повторяющиеся строки