Автор оригинала: Pankaj Kumar.
1. Pandas Drop () Синтаксис функции
Функция Pandas DataFrame Drop () позволяет удалять столбцы и строки. Синтаксис функции Drop ():
drop( self, labels=None, axis=0, index=None, columns=None, level=None, inplace=False, errors="raise" )
- этикетки : Метки для удаления из DataFrame. Он используется с «оси» для идентификации рядов или имен столбцов.
- Ось : Возможные значения {0 или «индекс», 1 или «столбцы»}, по умолчанию 0. Он используется с «метками», чтобы указать строки или столбцы.
- индекс : Индексы для удаления из DataFrame.
- Колонны : столбцы, чтобы падать из DataFrame.
- Уровень : Используется для указания уровня Infase Multiindex DataFrame.
- в помещении Если true ИСТИНА, источник DataFrame изменен, и ни один не возвращается. Значение по умолчанию является ложным, источник DataFrame остается неизменным, и возвращается новый объект DataFrame.
- Ошибки : Возможные значения {«игнорировать», «ROINE»}, по умолчанию «Rising». Если dataframe не имеет указанной метки, keyerror поднимается. Если мы укажем ошибки как «игнорировать», ошибка подавлена, и удаляются только существующие метки.
Давайте рассмотрим некоторые из примеров использования функции PandaS DataFrame Drop ().
2. Панды падения колонны
Мы можем бросить один столбец, а также несколько столбцов из DataFrame.
2.1) Снимите один столбец
import pandas as pd d1 = {'Name': ['Pankaj', 'Meghna', 'David'], 'ID': [1, 2, 3], 'Role': ['CEO', 'CTO', 'Editor']} source_df = pd.DataFrame(d1) print(source_df) # drop single column result_df = source_df.drop(columns='ID') print(result_df)
Выход:
Name ID Role 0 Pankaj 1 CEO 1 Meghna 2 CTO 2 David 3 Editor Name Role 0 Pankaj CEO 1 Meghna CTO 2 David Editor
2.2) Снимите несколько столбцов
result_df = source_df.drop(columns=['ID', 'Role']) print(result_df)
Выход:
Name 0 Pankaj 1 Meghna 2 David
3. Панды падения ряда
Давайте посмотрим на некоторые примеры, чтобы отбросить одну строку и несколько строк из объекта DataFrame.
3.1) Снимите один ряд
import pandas as pd d1 = {'Name': ['Pankaj', 'Meghna', 'David'], 'ID': [1, 2, 3], 'Role': ['CEO', 'CTO', 'Editor']} source_df = pd.DataFrame(d1) result_df = source_df.drop(index=0) print(result_df)
Выход:
Name ID Role 1 Meghna 2 CTO 2 David 3 Editor
3.2) Снимите несколько строк
result_df = source_df.drop(index=[1, 2]) print(result_df)
Выход:
Name ID Role 0 Pankaj 1 CEO
4. Капля столбцов DataFrame и строки на месте
Мы можем указать Inplace = True
Чтобы отбросить колонны и строки из самого источника DataFrame. В этом случае никто не возвращается из вызова функции Drop ().
import pandas as pd d1 = {'Name': ['Pankaj', 'Meghna', 'David'], 'ID': [1, 2, 3], 'Role': ['CEO', 'CTO', 'Editor']} source_df = pd.DataFrame(d1) source_df.drop(columns=['ID'], index=[0], inplace=True) print(source_df)
Выход:
Name Role 1 Meghna CTO 2 David Editor
5. Использование ярлыков и оси для падения колонн и строк
Это не рекомендуемый подход к удалению рядов и столбцов. Но приятно знать, потому что параметры «индекс» и «столбцов» были введены для падения () функции в Pandas версии 0.21.0. Таким образом, вы можете встретить его для более старого кода.
import pandas as pd d1 = {'Name': ['Pankaj', 'Meghna', 'David'], 'ID': [1, 2, 3], 'Role': ['CEO', 'CTO', 'Editor']} source_df = pd.DataFrame(d1) # drop rows result_df = source_df.drop(labels=[0, 1], axis=0) print(result_df) # drop columns result_df = source_df.drop(labels=['ID', 'Role'], axis=1) print(result_df)
Выход:
Name ID Role 2 David 3 Editor Name 0 Pankaj 1 Meghna 2 David
6. Подавление ошибок в снижении колонн и рядов
Если DataFrame не содержит данные этикетки, KeeRror повышен.
result_df = source_df.drop(columns=['XYZ'])
Выход:
KeyError: "['XYZ'] not found in axis"
Мы можем подавить эту ошибку, указав Ошибки = «игнорировать»
в вызове функции drop ().
result_df = source_df.drop(columns=['XYZ'], errors='ignore') print(result_df)
Выход:
Name ID Role 0 Pankaj 1 CEO 1 Meghna 2 CTO 2 David 3 Editor
7. Заключение
Pandas DataFrame Drop () – это очень полезная функция для отброса нежелательных столбцов и строк. Есть еще две функции, которые расширяют функциональность Drop ().
- drop_duplates () Удалить дубликаты строки
- Dropna () Чтобы удалить строки и столбцы с отсутствующими значениями
8. Ссылки
- Учебник модуля Python Pandas
- Pandas Drop () API DOC