Różnica między osią = 0 i osią = 1 w pandach


Wiele funkcji w pandach wymaga określenia osi, wzdłuż której mają zostać zastosowane określone obliczenia.

Generalnie obowiązuje następująca zasada:

  • oś=0 : Zastosuj obliczenia „na kolumnę”.
  • oś=1 : Zastosuj obliczenia „na linię”.

Poniższe przykłady pokazują, jak używać argumentu osi w różnych scenariuszach z następującą ramką danych pand:

 import pandas as pd

#createDataFrame
df = pd. DataFrame ({' team ': ['A', 'A', 'B', 'B', 'B', 'B', 'C', 'C'],
                   ' 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

	team points assists rebounds
0 to 25 5 11
1 to 12 7 8
2 B 15 7 10
3 B 14 9 6
4 B 19 12 6
5 B 23 9 5
6 C 25 9 9
7 C 29 4 12

Przykład 1: Znajdowanie średniej wzdłuż różnych osi

Możemy użyć osi=0 , aby znaleźć średnią z każdej kolumny w ramce danych:

 #find mean of each column
df. mean (axis= 0 )

points 20.250
assists 7,750
rebounds 8,375
dtype:float64

Dane wyjściowe wyświetlają średnią wartość każdej kolumny liczbowej w ramce danych.

Zauważ, że pandy automatycznie unikają uśredniania kolumny „zespół”, ponieważ jest to kolumna znakowa.

Możemy również użyć osi=1, aby znaleźć średnią każdego wiersza w ramce danych:

 #find mean of each row
df. mean (axis= 1 )

0 13.666667
1 9.000000
2 10.666667
3 9.666667
4 12.333333
5 12.333333
6 14.333333
7 15.000000
dtype:float64

Z wyniku możemy zobaczyć:

  • Średnia wartość pierwszego wiersza wynosi 13,667 .
  • Średnia wartość w drugim rzędzie wynosi 9000 .
  • Średnia wartość w trzecim rzędzie to 10 667 .

I tak dalej.

Przykład 2: Znajdowanie sumy wzdłuż różnych osi

Możemy użyć osi=0 , aby znaleźć sumę określonych kolumn w ramce danych:

 #find sum of 'points' and 'assists' columns
df[[' points ', ' assists ']]. sum (axis= 0 )

points 162
assists 62
dtype: int64

Możemy również użyć osi=1 , aby znaleźć sumę każdego wiersza w ramce danych:

 #find sum of each row
df. sum (axis= 1 )

0 41
1 27
2 32
3 29
4 37
5 37
6 43
7 45
dtype: int64

Przykład 3: Znajdowanie Maxa wzdłuż różnych osi

Możemy użyć osi=0, aby znaleźć maksymalną wartość określonych kolumn w ramce danych:

 #find max of 'points', 'assists', and 'rebounds' columns
df[[' points ', ' assists ', ' rebounds ']]. max (axis= 0 )

points 29
assists 12
rebounds 12
dtype: int64

Możemy również użyć osi=1, aby znaleźć maksymalną wartość każdego wiersza w ramce danych:

 #find max of each row
df. max (axis= 1 )

0 25
1 12
2 15
3 14
4 19
5 23
6 25
7 29
dtype: int64

Z wyniku możemy zobaczyć:

  • Maksymalna wartość w pierwszym wierszu to 25 .
  • Maksymalna wartość w drugiej linii to 12 .
  • Maksymalna wartość w trzecim wierszu to 15 .

I tak dalej.

Dodatkowe zasoby

Poniższe samouczki wyjaśniają, jak wykonywać inne typowe operacje na pandach:

Jak obliczyć średnią kolumn w Pandach
Jak obliczyć sumę kolumn w Pandach
Jak znaleźć maksymalną wartość kolumn w Pandach

Dodaj komentarz

Twój adres e-mail nie zostanie opublikowany. Wymagane pola są oznaczone *