Jak korzystać z funkcji where() w pandach (z przykładami)
Funkcji Where() można użyć do zastąpienia określonych wartości w ramce DataFrame pandy.
Ta funkcja wykorzystuje następującą podstawową składnię:
df. where (cond, other=nan)
Dla każdej wartości w ramce danych pandy, gdzie cond ma wartość True, zachowywana jest oryginalna wartość.
Dla każdej wartości, gdzie cond ma wartość False, oryginalna wartość jest zastępowana wartością określoną przez drugi argument.
Poniższe przykłady pokazują, jak w praktyce używać tej składni z następującą ramką DataFrame pand:
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
Przykład 1: Zamień wartości w całej DataFrame
Poniższy kod pokazuje, jak użyć funkcji Where() do zastąpienia wszystkich wartości, które nie spełniają określonego warunku w całej ramce DataFrame pandy, wartością 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
Drugiego argumentu możemy także użyć do zastąpienia wartości czymś innym niż 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
Przykład 2: Zamień wartości w określonej kolumnie DataFrame
Poniższy kod pokazuje, jak użyć funkcji Where() do zamiany wszystkich wartości, które nie spełniają określonego warunku w określonej kolumnie 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
Pełną dokumentację online funkcji pandaswhere() można znaleźć tutaj .
Dodatkowe zasoby
Poniższe samouczki wyjaśniają, jak korzystać z innych typowych funkcji pand:
Jak korzystać z funkcji opisu () w Pandach
Jak korzystać z funkcji idxmax() w Pandach
Jak zastosować funkcję do wybranych kolumn w Pandach