Як порівняти три стовпці в pandas (з прикладом)


Ви можете використовувати такий базовий синтаксис, щоб порівняти значення трьох стовпців у pandas:

 df[' all_matching '] = df. apply ( lambda x: x.col1 == x.col2 == x.col3 , axis = 1 )

Цей синтаксис створює новий стовпець під назвою all_matching , який повертає True , якщо всі стовпці мають відповідні значення, інакше повертає False .

У наступному прикладі показано, як використовувати цей синтаксис на практиці.

Приклад: порівняйте три стовпці в Pandas

Припустімо, що ми маємо такий фрейм даних pandas із трьома стовпцями:

 import pandas as pd

#createDataFrame
df = pd. DataFrame ({' A ': [4, 0, 3, 3, 6, 8, 7, 9, 12],
                   ' B ': [4, 2, 3, 5, 6, 4, 7, 7, 12],
                   ' C ': [4, 0, 3, 5, 5, 10, 7, 9, 12]})

#view DataFrame
print (df)

    ABC
0 4 4 4
1 0 2 0
2 3 3 3
3 3 5 5
4 6 6 5
5 8 4 10
6 7 7 7
7 9 7 9
8 12 12 12

Ми можемо використати наступний код, щоб створити новий стовпець під назвою all_matching , який повертає True , якщо всі три стовпці збігаються в даному рядку, і False , якщо вони не відповідають:

 #create new column that displays whether or not all column values match
df[' all_matching '] = df. apply ( lambda x: x. A == x. B == x. C , axis = 1 )

#view updated DataFrame
print (df)

    ABC all_matching
0 4 4 4 True
1 0 2 0 False
2 3 3 3 True
3 3 5 5 False
4 6 6 5 False
5 8 4 10 False
6 7 7 7 True
7 9 7 9 False
8 12 12 12 True

Новий стовпець під назвою all_matching вказує, чи збігаються значення в трьох стовпцях у даному рядку.

Наприклад:

  • Усі три значення збігаються в першому рядку, тому повертається True .
  • Не всі значення збігаються у другому рядку, тому повертається False .

І так далі.

Додаткові ресурси

У наступних посібниках пояснюється, як виконувати інші типові завдання в pandas:

Як перейменувати стовпці в Pandas
Як додати стовпець до Pandas DataFrame
Як змінити порядок стовпців у Pandas DataFrame

Додати коментар

Ваша e-mail адреса не оприлюднюватиметься. Обов’язкові поля позначені *