Как сравнить два столбца в Pandas (с примерами)


Часто вам может понадобиться сравнить два столбца в Pandas DataFrame и записать результаты сравнения в третий столбец.

Вы можете легко сделать это, используя следующий синтаксис:

conditions=[(condition1),(condition2)]
choices=[" choice1"," choice2 "]

df[" new_column_name "]=np.select (conditions, choices, default)

Вот что делает этот код:

  • условия - это условия для проверки между двумя столбцами
  • варианты — это результаты, которые должны быть возвращены в зависимости от условий
  • np.select используется для возврата результатов в новый столбец

В следующем примере показано, как использовать этот код на практике.

Пример: сравнение двух столбцов в Pandas

Предположим, у нас есть следующий DataFrame, который показывает количество голов, забитых двумя футбольными командами в пяти разных матчах:

import numpy as np
import pandas as pd

#create DataFrame
df = pd.DataFrame({'A_points': [1, 3, 3, 3, 5],
 'B_points': [4, 5, 2, 3, 2]})

#view DataFrame 
df

 A_points B_points
0 1 4
1 3 5
2 3 2
3 3 3
4 5 2

Мы можем использовать следующий код для сравнения количества голов по строкам и вывода победителя матча в третьем столбце:

#define conditions
conditions = [df['A_points'] > df['B_points'], 
 df['A_points'] < df['B_points']]

#define choices
choices = ['A', 'B']

#create new column in DataFrame that displays results of comparisons
df['winner'] = np.select (conditions, choices, default='Tie')

#view the DataFrame
df

 A_points B_points winner
0 1 4 B
1 3 5 B
2 3 2 A
3 3 3 Tie
4 5 2 A

Результаты сравнения отображаются в новой колонке под названием « победитель» .

Заметки

Вот несколько вещей, о которых следует помнить при сравнении двух столбцов в кадре данных pandas:

  • Количество условий и вариантов выбора должно быть равным.
  • Значение по умолчанию указывает значение, которое будет отображаться в новом столбце, если ни одно из условий не выполняется.
  • И NumPy , и Pandas необходимы, чтобы этот код работал.

Дополнительные ресурсы

В следующих руководствах объясняется, как выполнять другие распространенные задачи в pandas:

Как переименовать столбцы в Pandas
Как добавить столбец в Pandas DataFrame
Как изменить порядок столбцов в Pandas DataFrame

Замечательно! Вы успешно подписались.
Добро пожаловать обратно! Вы успешно вошли
Вы успешно подписались на кодкамп.
Срок действия вашей ссылки истек.
Ура! Проверьте свою электронную почту на наличие волшебной ссылки для входа.
Успех! Ваша платежная информация обновлена.
Ваша платежная информация не была обновлена.