Як написати твердження в pandas (з прикладом)
Оператор case — це тип оператора, який циклічно перебирає умови та повертає значення, коли виконується перша умова.
Найпростіший спосіб реалізувати оператор case у Pandas DataFrame — це використовувати функцію NumPywhere() , яка використовує такий базовий синтаксис:
df[' new_column '] = np. where (df[' col2 ']<9, 'value1', n.p. where (df[' col2 ']<12, 'value2', n.p. where (df[' col2 ']<15, 'value3', 'value4')))
Ця конкретна функція переглядає значення в стовпці під назвою col2 і повертає:
- « value1 », якщо значення в col2 менше 9
- « value2 », якщо значення в col2 менше 12
- « value3 », якщо значення в col2 менше 15
- “ value4 ”, якщо жодна з попередніх умов не виконується
У наступному прикладі показано, як використовувати цю функцію на практиці.
Приклад: оператор case в Pandas
Припустімо, що у нас є наступні pandas DataFrame:
import pandas as pd import numpy as np #createDataFrame df = pd. DataFrame ({' player ': [1, 2, 3, 4, 5, 6, 7, 8, 9, 10], ' points ': [6, 8, 9, 9, 12, 14, 15, 17, 19, 22]}) #view DataFrame df player points 0 1 6 1 2 8 2 3 9 3 4 9 4 5 12 5 6 14 6 7 15 7 8 17 8 9 19 9 10 22
Ми можемо використовувати такий синтаксис, щоб написати оператор case, який створює новий стовпець під назвою клас , значення якого визначаються значеннями в стовпці точок :
#add 'class' column using case-statement logic df[' class '] = np. where (df[' points ']<9, 'Bad', n.p. where (df[' points ']<12, 'OK', n.p. where (df[' points ']<15, 'Good', 'Great'))) #view updated DataFrame df player points class 0 1 6 Bad 1 2 8 Bad 2 3 9 OK 3 4 9 OK 4 5 12 Good 5 6 14 Good 6 7 15 Great 7 8 17 Great 8 9 19 Great 9 10 22 Great
Інструкція case переглянула значення в стовпці балів і повернула:
- « Погано », якщо значення в колонці балів менше 9
- « ОК », якщо значення в колонці балів менше 12
- « Добре », якщо значення в колонці балів було менше 15
- « Чудово », якщо жодна з попередніх умов не виконується
Примітка . Ви можете знайти повну документацію для функції NumPywhere() тут .
Додаткові ресурси
У наступних посібниках пояснюється, як виконувати інші типові завдання в Pandas:
Як створити новий стовпець на основі умови в Pandas
Як використовувати функцію NumPy Where() із кількома умовами