Як порівняти два стовпці в 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 #createDataFrame 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 DataFrame:
- Кількість умов і варіантів має бути рівною.
- За замовчуванням вказується значення, яке відображатиметься в новому стовпці, якщо не виконується жодна з умов.
- Для роботи цього коду потрібні NumPy і Pandas .
Додаткові ресурси
У наступних посібниках пояснюється, як виконувати інші типові завдання в pandas:
Як перейменувати стовпці в Pandas
Як додати стовпець до Pandas DataFrame
Як змінити порядок стовпців у Pandas DataFrame