Pandy: jak używać funkcji opisu () i usuwać notację naukową
Możesz użyć funkcji opisu() do wygenerowaniastatystyk opisowych dla zmiennych w ramce DataFrame pandy.
Aby usunąć notację naukową z wyników funkcji opisu() , możesz skorzystać z następujących metod:
Metoda 1: Usuń notację naukową, jeśli używasz funkcji opisu() z kolumną
df[' my_column ']. describe (). apply ( lambda x: format (x, ' f '))
Metoda 2: Usuń notację naukową, jeśli używasz funkcji opisu() z wieloma kolumnami
df. describe (). apply ( lambda x: x.apply (' {0:.5f} '. format ))
Poniższe przykłady pokazują, jak w praktyce używać każdej metody z następującą ramką DataFrame pand:
import pandas as pd
#createDataFrame
df = pd. DataFrame ({' store ': ['A', 'A', 'A', 'A', 'B', 'B', 'B', 'B'],
' sales ': [8450550, 406530, 53000, 6000, 2000, 4000, 5400, 6500],
' returns ':[2212200, 145200, 300, 2500, 700, 600, 800, 1200]})
#view DataFrame
print (df)
store sales returns
0 A 8450550 2212200
1 A 406530 145200
2 A 53000 300
3 A 6000 2500
4 B 2000 700
5 B 4000 600
6 B 5400 800
7 B 6500 1200
Przykład 1: Usuń notację naukową, używając funkcji opisu() z kolumną
Jeśli do obliczenia statystyk opisowych dla kolumny sprzedaży użyjemy funkcji opisu() , wartości wyjściowe zostaną wyświetlone w notacji naukowej:
#calculate descriptive statistics for sales column
df[' sales ']. describe ()
count 8.000000e+00
mean 1.116748e+06
std 2.966552e+06
min 2.000000e+03
25% 5.050000e+03
50% 6.250000e+03
75% 1.413825e+05
max 8.450550e+06
Name: sales, dtype: float64
Należy pamiętać, że każda z wartości wyjściowych jest wyświetlana w notacji naukowej.
Możemy użyć następującej składni, aby usunąć notację naukową z wyniku:
#calculate descriptive statistics for sales column and suppress scientific notation
df[' sales ']. describe (). apply ( lambda x: format (x, ' f '))
count 8.000000
mean 1116747.500000
std 2966551.594104
min 2000.000000
25% 5050.000000
50% 6250.000000
75% 141382.500000
max 8450550.000000
Name: sales, dtype: object
Należy pamiętać, że wartości wyjściowe są teraz wyświetlane bez notacji naukowej.
Przykład 2: Usuń notację naukową, jeśli używasz funkcji opisu() z wieloma kolumnami
Jeśli użyjemy funkcji opisu() do obliczenia statystyk opisowych dla każdej kolumny liczbowej, wartości wyjściowe zostaną wyświetlone w notacji naukowej:
#calculate descriptive statistics for each numeric column
df. describe ()
sales returns
count 8.000000e+00 8.000000e+00
mean 1.116748e+06 2.954375e+05
std 2.966552e+06 7.761309e+05
min 2.000000e+03 3.000000e+02
25% 5.050000e+03 6.750000e+02
50% 6.250000e+03 1.000000e+03
75% 1.413825e+05 3.817500e+04
max 8.450550e+06 2.212200e+06
Należy pamiętać, że każda z wartości wyjściowych jest wyświetlana w notacji naukowej.
Możemy użyć następującej składni, aby usunąć notację naukową z wyniku:
#calculate descriptive statistics for numerical columns and suppress scientific notation
df. describe (). apply ( lambda x: x.apply (' {0:.5f} '. format ))
sales returns
count 8.00000 8.00000
mean 1116747.50000 295437.50000
std 2966551.59410 776130.93692
min 2000.00000 300.00000
25% 5050.00000 675.00000
50% 6250.00000 1000.00000
75% 141382.50000 38175.00000
max 8450550.00000 2212200.00000
Należy pamiętać, że wartości wyjściowe są teraz wyświetlane bez notacji naukowej.
Zauważ, że w tym przykładzie użyliśmy 0:.5f do wyświetlenia na wyjściu 5 miejsc po przecinku.
Możesz zastąpić 5 inną liczbą, aby wyświetlić inną liczbę miejsc po przecinku.
Dodatkowe zasoby
Poniższe samouczki wyjaśniają, jak wykonywać inne typowe operacje na pandach:
Pandy: jak obliczyć skumulowaną sumę na grupę
Pandy: jak liczyć unikalne wartości według grupy
Pandy: jak obliczyć korelację według grup