Jak napisać opis przypadku w pandach (z przykładem)
Instrukcja case to typ instrukcji, która cyklicznie przechodzi przez warunki i zwraca wartość, gdy pierwszy warunek zostanie spełniony.
Najprostszym sposobem zaimplementowania instrukcji case w ramce danych Pandas jest użycie funkcji NumPywhere() , która wykorzystuje następującą podstawową składnię:
df[' new_column '] = np. where (df[' col2 ']<9, 'value1', n.p. where (df[' col2 ']<12, 'value2', n.p. where (df[' col2 ']<15, 'value3', 'value4')))
Ta konkretna funkcja sprawdza wartość w kolumnie o nazwie col2 i zwraca:
- „ wartość1 ”, jeśli wartość w kolumnie2 jest mniejsza niż 9
- „ wartość2 ”, jeśli wartość w kolumnie2 jest mniejsza niż 12
- „ wartość3 ”, jeśli wartość w kolumnie2 jest mniejsza niż 15
- „ wartość4 ”, jeśli żaden z poprzednich warunków nie jest spełniony
Poniższy przykład pokazuje, jak w praktyce wykorzystać tę funkcję.
Przykład: opis przypadku w Pandach
Załóżmy, że mamy następującą ramkę DataFrame pand:
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
Możemy użyć poniższej składni, aby napisać instrukcję case, która tworzy nową kolumnę o nazwie class , której wartości są określone przez wartości w kolumnie punktów :
#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
Instrukcja case sprawdziła wartość w kolumnie punktów i zwróciła:
- „ Zły ”, jeśli wartość w kolumnie punktów była mniejsza niż 9
- „ OK ”, jeśli wartość w kolumnie punktów była mniejsza niż 12
- „ Dobrze ”, jeśli wartość w kolumnie punktów była mniejsza niż 15
- „ Świetnie ”, jeśli żaden z powyższych warunków nie jest spełniony
Uwaga : pełną dokumentację funkcji NumPywhere() można znaleźć tutaj .
Dodatkowe zasoby
Poniższe samouczki wyjaśniają, jak wykonywać inne typowe zadania w Pandach:
Jak utworzyć nową kolumnę na podstawie warunku w Pandach
Jak używać funkcji NumPy Where() z wieloma warunkami