Pandy: jak dodawać kolumny na podstawie warunku
Możesz użyć następującej składni, aby zsumować wartości kolumny w pandzie DataFrame na podstawie warunku:
df. loc [df[' col1 '] == some_value , ' col2 ']. sum ()
W tym samouczku przedstawiono kilka przykładów praktycznego zastosowania tej składni przy użyciu następującej ramki DataFrame pand:
import pandas as pd #createDataFrame df = pd. DataFrame ({' team ': ['A', 'A', 'A', 'B', 'B', 'C'], ' conference ': ['East', 'East', 'East', 'West', 'West', 'East'], ' points ': [11, 8, 10, 6, 6, 5], ' rebounds ': [7, 7, 6, 9, 12, 8]}) #view DataFrame df team conference points rebounds 0 A East 11 7 1 A East 8 7 2 A East 10 6 3 B West 6 9 4 B West 6 12 5 C East 5 8
Przykład 1: Dodaj kolumnę na podstawie warunku
Poniższy kod pokazuje, jak znaleźć sumę punktów dla wierszy, w których drużyna jest równa „A”:
df. loc [df[' team '] == ' A ', ' points ']. sum () 29
Przykład 2: Dodaj kolumnę na podstawie wielu warunków
Poniższy kod pokazuje, jak znaleźć sumę punktów dla linii, w których drużyna równa się „A” , a konferencja równa się „Wschód”:
df. loc [(df[' team '] == ' A ') & (df[' conference '] == ' East '), ' points ']. sum () 29
Przykład 3: Dodaj kolumnę na podstawie jednego z kilku warunków
Poniższy kod pokazuje, jak znaleźć sumę punktów dla linii, w których drużyna jest równa „A” lub „B”:
df. loc [df[' team ']. isin ([' A ',' B ']), ' dots ']. sum () 41
Więcej tutoriali o pandach znajdziesz na tej stronie .