Выберите все столбцы, кроме одного заданного столбца в кадре данных Pandas

Опубликовано: 27 Марта, 2022

DataFrame Структура данных - это сердце библиотеки Pandas. Фреймы данных в основном представляют собой объект серии с двумя измерениями. У них есть строки и столбцы со строками, представляющими индекс, и столбцами, представляющими содержимое. Теперь давайте посмотрим, как выбрать все столбцы, кроме одного заданного столбца в Pandas Dataframe.

First, Let’s create a Dataframe:

Python3

# import pandas library
import pandas as pd
  
# create a Dataframe
data = pd.DataFrame({
    "course_name": ["Data Structures", "Python",
                    "Machine Learning"],
    "student_name": ["A", "B"
                     "C"],
    "student_city": ["Chennai", "Pune"
                     "Delhi"],
    "student_gender": ["M", "F",
                       "M"] })
# show the Dataframe
data

Выход:

Метод 1: ИспользованиеDataframe.loc [] .

Этот GeeksForGeeks Dataframe представляет собой просто двухмерный массив с числовым индексом. Следовательно, чтобы исключить только один столбец, мы могли бы использовать методы columns для получения всех столбцов и использовать оператор not для исключения столбцов, которые не нужны. Этот метод работает только в том случае, если Dataframe не является мультииндексированным (не имеет более одного индекса).

Example: Select all columns, except one ‘student_gender’ column in Pandas Dataframe.

Python3

# import pandas library
import pandas as pd
  
# create a Dataframe
data = pd.DataFrame({
    "course_name": ["Data Structures", "Python",
                    "Machine Learning"],
    "student_name": ["A", "B"
                     "C"],
    "student_city": ["Chennai", "Pune"
                     "Delhi"],
    "student_gender": ["M", "F",
                       "M"] })
                         
df = data.loc[ : , data.columns != "student_gender"]
  
# show the dataframe
df

Выход:

отфильтрованный столбец student_gender

Метод 2: Использование метода drop ().

Dataframe поддерживает метод drop () для удаления определенного столбца. Он принимает два аргумента: имя столбца / строки и ось.

Пример: выберите все столбцы, кроме одного столбца student_city в Pandas Dataframe.

Python3

# import pandas library
  
import pandas as pd
  
# create a Dataframe
data = pd.DataFrame({
   "course_name": ["Data Structures", "Python",
                   "Machine Learning"],
  
   "student_name": ["A", "B",
                    "C"],
  
   "student_city": ["Chennai", "Pune",
                    "Delhi"],
  
   "student_gender": ["M", "F",
                      "M"] })
  
# drop method
df = data.drop("student_city",
               axis = 1)
   
# show the dataframe
df

Выход:

Столбец student_city удален

Метод 3: Совместное использование метода Series.difference () и оператора [].

Series.difference () Метод возвращает новый индекс с элементами из индекса, которых нет в другом.

Example: Select all columns, except one ‘student_name’ column in Pandas Dataframe.

Python3

# import pandas library
import pandas as pd
  
# create a Dataframe
data = pd.DataFrame({
    "course_name": ["Data Structures", "Python",
                    "Machine Learning"],
    "student_name": ["A", "B"
                     "C"],
    "student_city": ["Chennai", "Pune"
                     "Delhi"],
    "student_gender": ["M", "F",
                       "M"] })
                         
df = data[data.columns.difference(["student_name"])]
  
# show the dataframe
df

Выход:

отфильтрованный столбец student_name

Внимание компьютерщик! Укрепите свои основы с помощью базового курса программирования Python и изучите основы.

Для начала подготовьтесь к собеседованию. Расширьте свои концепции структур данных с помощью курса Python DS. А чтобы начать свое путешествие по машинному обучению, присоединяйтесь к курсу Машинное обучение - базовый уровень.