Чтобы удалить список строк в pandas, вы можете использовать несколько методов. Вот несколько вариантов:
-
Использование метода
drop: вы можете передать список индексов строк или меток в методdropвместе сaxis= 0, указывающий, что вы хотите удалить строки. Например:import pandas as pd df = pd.DataFrame({'A': [1, 2, 3], 'B': [4, 5, 6]}) rows_to_drop = [1, 2] # List of row indexes to drop new_df = df.drop(rows_to_drop, axis=0)Это создаст новый DataFrame
new_dfс удаленными указанными строками. -
Использование логического индексирования. Вы можете создать логическую маску, проверив, находится ли индекс или метка каждой строки в списке строк, которые нужно удалить. Затем вы можете использовать эту маску для фильтрации нужных строк. Вот пример:
import pandas as pd df = pd.DataFrame({'A': [1, 2, 3], 'B': [4, 5, 6]}) rows_to_drop = [1, 2] # List of row indexes to drop mask = df.index.isin(rows_to_drop) new_df = df[~mask]Оператор
~отменяет маску, выбирая строки, которых нет в списке. -
Использование индексатора
iloc. Вы можете использовать индексаторilocдля выбора строк на основе их позиций. Передавая список позиций строк, вы можете исключить указанные строки. Вот пример:import pandas as pd df = pd.DataFrame({'A': [1, 2, 3], 'B': [4, 5, 6]}) rows_to_drop = [1, 2] # List of row indexes to drop new_df = df.iloc[[i for i in range(len(df.index)) if i not in rows_to_drop]]При этом создается новый DataFrame
new_df, исключая строки, указанные в списке.