Як використовувати функцію where() у pandas (з прикладами)
Функцію Where() можна використовувати для заміни певних значень у pandas DataFrame.
Ця функція використовує такий базовий синтаксис:
df. where (cond, other=nan)
Для кожного значення в pandas DataFrame, де cond має значення True, зберігається вихідне значення.
Для кожного значення, де cond має значення False, вихідне значення замінюється значенням, указаним іншим аргументом.
Наступні приклади показують, як використовувати цей синтаксис на практиці з наступними pandas DataFrame:
import pandas as pd #define DataFrame df = pd. DataFrame ({' points ': [25, 12, 15, 14, 19, 23, 25, 29], ' assists ': [5, 7, 7, 9, 12, 9, 9, 4], ' rebounds ': [11, 8, 10, 6, 6, 5, 9, 12]}) #view DataFrame df points assists rebounds 0 25 5 11 1 12 7 8 2 15 7 10 3 14 9 6 4 19 12 6 5 23 9 5 6 25 9 9 7 29 4 12
Приклад 1: Заміна значень у всьому DataFrame
Наступний код показує, як використовувати функцію Where() для заміни всіх значень, які не відповідають певній умові, у цілому pandas DataFrame на значення NaN.
#keep values that are greater than 7, but replace all others with NaN df. where (df>7) points assists rebounds 0 25 NaN 11.0 1 12 NaN 8.0 2 15 NaN 10.0 3 14 9.0 NaN 4 19 12.0 NaN 5 23 9.0 NaN 6 25 9.0 9.0 7 29 NaN 12.0
Ми також можемо використовувати інший аргумент, щоб замінити значення чимось іншим, ніж NaN.
#keep values that are greater than 7, but replace all others with 'low' df. where (df>7, other=' low ') points assists rebounds 0 25 low 11 1 12 low 8 2 15 low 10 3 14 9 low 4 19 12 low 5 23 9 low 6 25 9 9 7 29 low 12
Приклад 2: Заміна значень у певному стовпці DataFrame
Наступний код показує, як використовувати функцію Where() для заміни всіх значень, які не відповідають певній умові, у певному стовпці DataFrame.
#keep values greater than 15 in 'points' column, but replace others with 'low' df[' points '] = df[' points ']. where (df[' points ']>15, other=' low ') #view DataFrame df points assists rebounds 0 25 5 11 1 low 7 8 2 low 7 10 3 low 9 6 4 19 12 6 5 23 9 5 6 25 9 9 7 29 4 12
Ви можете знайти повну онлайн-документацію для функції pandaswhere() тут .
Додаткові ресурси
У наступних посібниках пояснюється, як використовувати інші поширені функції в pandas:
Як використовувати функцію describe() у Pandas
Як використовувати функцію idxmax() у Pandas
Як застосувати функцію до вибраних стовпців у Pandas