Python Pandas - Statistik Deskriptif
Sejumlah besar metode secara kolektif menghitung statistik deskriptif dan operasi terkait lainnya di DataFrame. Sebagian besar seperti agregasisum(), mean(), tetapi beberapa di antaranya, seperti sumsum(), menghasilkan objek dengan ukuran yang sama. Secara umum, metode ini membutuhkanaxisargumen, seperti ndarray. {sum, std, ...}, tetapi sumbu dapat ditentukan dengan nama atau integer
DataFrame - "indeks" (sumbu = 0, default), "kolom" (sumbu = 1)
Mari kita membuat DataFrame dan menggunakan objek ini di sepanjang bab ini untuk semua operasi.
Contoh
import pandas as pd
import numpy as np
#Create a Dictionary of series
d = {'Name':pd.Series(['Tom','James','Ricky','Vin','Steve','Smith','Jack',
'Lee','David','Gasper','Betina','Andres']),
'Age':pd.Series([25,26,25,23,30,29,23,34,40,30,51,46]),
'Rating':pd.Series([4.23,3.24,3.98,2.56,3.20,4.6,3.8,3.78,2.98,4.80,4.10,3.65])
}
#Create a DataFrame
df = pd.DataFrame(d)
print df
Nya output adalah sebagai berikut -
Age Name Rating
0 25 Tom 4.23
1 26 James 3.24
2 25 Ricky 3.98
3 23 Vin 2.56
4 30 Steve 3.20
5 29 Smith 4.60
6 23 Jack 3.80
7 34 Lee 3.78
8 40 David 2.98
9 30 Gasper 4.80
10 51 Betina 4.10
11 46 Andres 3.65
jumlah()
Mengembalikan jumlah nilai untuk sumbu yang diminta. Secara default, sumbu adalah indeks (sumbu = 0).
import pandas as pd
import numpy as np
#Create a Dictionary of series
d = {'Name':pd.Series(['Tom','James','Ricky','Vin','Steve','Smith','Jack',
'Lee','David','Gasper','Betina','Andres']),
'Age':pd.Series([25,26,25,23,30,29,23,34,40,30,51,46]),
'Rating':pd.Series([4.23,3.24,3.98,2.56,3.20,4.6,3.8,3.78,2.98,4.80,4.10,3.65])
}
#Create a DataFrame
df = pd.DataFrame(d)
print df.sum()
Nya output adalah sebagai berikut -
Age 382
Name TomJamesRickyVinSteveSmithJackLeeDavidGasperBe...
Rating 44.92
dtype: object
Setiap kolom individu ditambahkan satu per satu (String ditambahkan).
sumbu = 1
Sintaks ini akan memberikan keluaran seperti gambar di bawah ini.
import pandas as pd
import numpy as np
#Create a Dictionary of series
d = {'Name':pd.Series(['Tom','James','Ricky','Vin','Steve','Smith','Jack',
'Lee','David','Gasper','Betina','Andres']),
'Age':pd.Series([25,26,25,23,30,29,23,34,40,30,51,46]),
'Rating':pd.Series([4.23,3.24,3.98,2.56,3.20,4.6,3.8,3.78,2.98,4.80,4.10,3.65])
}
#Create a DataFrame
df = pd.DataFrame(d)
print df.sum(1)
Nya output adalah sebagai berikut -
0 29.23
1 29.24
2 28.98
3 25.56
4 33.20
5 33.60
6 26.80
7 37.78
8 42.98
9 34.80
10 55.10
11 49.65
dtype: float64
berarti()
Mengembalikan nilai rata-rata
import pandas as pd
import numpy as np
#Create a Dictionary of series
d = {'Name':pd.Series(['Tom','James','Ricky','Vin','Steve','Smith','Jack',
'Lee','David','Gasper','Betina','Andres']),
'Age':pd.Series([25,26,25,23,30,29,23,34,40,30,51,46]),
'Rating':pd.Series([4.23,3.24,3.98,2.56,3.20,4.6,3.8,3.78,2.98,4.80,4.10,3.65])
}
#Create a DataFrame
df = pd.DataFrame(d)
print df.mean()
Nya output adalah sebagai berikut -
Age 31.833333
Rating 3.743333
dtype: float64
std ()
Mengembalikan simpangan baku Bressel dari kolom numerik.
import pandas as pd
import numpy as np
#Create a Dictionary of series
d = {'Name':pd.Series(['Tom','James','Ricky','Vin','Steve','Smith','Jack',
'Lee','David','Gasper','Betina','Andres']),
'Age':pd.Series([25,26,25,23,30,29,23,34,40,30,51,46]),
'Rating':pd.Series([4.23,3.24,3.98,2.56,3.20,4.6,3.8,3.78,2.98,4.80,4.10,3.65])
}
#Create a DataFrame
df = pd.DataFrame(d)
print df.std()
Nya output adalah sebagai berikut -
Age 9.232682
Rating 0.661628
dtype: float64
Fungsi & Deskripsi
Mari kita sekarang memahami fungsi di bawah Statistik Deskriptif di Python Pandas. Tabel berikut mencantumkan fungsi penting -
Sr.No. | Fungsi | Deskripsi |
---|---|---|
1 | menghitung() | Jumlah observasi bukan nol |
2 | jumlah() | Jumlah nilai |
3 | berarti() | Mean of Values |
4 | median () | Median Nilai |
5 | mode() | Modus nilai |
6 | std () | Deviasi Standar dari Nilai |
7 | min () | Nilai Minimum |
8 | maks () | Nilai maksimum |
9 | abs () | Nilai mutlak |
10 | melecut() | Produk Nilai |
11 | cumsum () | Jumlah Kumulatif |
12 | cumprod () | Produk Kumulatif |
Note- Karena DataFrame adalah struktur data yang heterogen. Operasi generik tidak bekerja dengan semua fungsi.
Fungsi seperti sum(), cumsum()bekerja dengan elemen data string dan karakter (atau) tanpa kesalahan apa pun. Meskipunn Praktiknya, agregasi karakter tidak pernah digunakan secara umum, fungsi ini tidak memberikan pengecualian apa pun.
Fungsi seperti abs(), cumprod() membuang pengecualian ketika DataFrame berisi data karakter atau string karena operasi semacam itu tidak dapat dilakukan.
Meringkas Data
Itu describe() fungsi menghitung ringkasan statistik yang berkaitan dengan kolom DataFrame.
import pandas as pd
import numpy as np
#Create a Dictionary of series
d = {'Name':pd.Series(['Tom','James','Ricky','Vin','Steve','Smith','Jack',
'Lee','David','Gasper','Betina','Andres']),
'Age':pd.Series([25,26,25,23,30,29,23,34,40,30,51,46]),
'Rating':pd.Series([4.23,3.24,3.98,2.56,3.20,4.6,3.8,3.78,2.98,4.80,4.10,3.65])
}
#Create a DataFrame
df = pd.DataFrame(d)
print df.describe()
Nya output adalah sebagai berikut -
Age Rating
count 12.000000 12.000000
mean 31.833333 3.743333
std 9.232682 0.661628
min 23.000000 2.560000
25% 25.000000 3.230000
50% 29.500000 3.790000
75% 35.500000 4.132500
max 51.000000 4.800000
Fungsi ini memberikan mean, std dan IQRnilai-nilai. Dan, fungsi mengecualikan kolom karakter dan ringkasan yang diberikan tentang kolom numerik.'include'adalah argumen yang digunakan untuk menyampaikan informasi yang diperlukan mengenai kolom apa yang perlu dipertimbangkan untuk meringkas. Mengambil daftar nilai; secara default, 'angka'.
- object - Meringkas kolom String
- number - Meringkas kolom Numerik
- all - Meringkas semua kolom bersama-sama (Tidak boleh melewatkannya sebagai nilai daftar)
Sekarang, gunakan pernyataan berikut dalam program dan periksa hasilnya -
import pandas as pd
import numpy as np
#Create a Dictionary of series
d = {'Name':pd.Series(['Tom','James','Ricky','Vin','Steve','Smith','Jack',
'Lee','David','Gasper','Betina','Andres']),
'Age':pd.Series([25,26,25,23,30,29,23,34,40,30,51,46]),
'Rating':pd.Series([4.23,3.24,3.98,2.56,3.20,4.6,3.8,3.78,2.98,4.80,4.10,3.65])
}
#Create a DataFrame
df = pd.DataFrame(d)
print df.describe(include=['object'])
Nya output adalah sebagai berikut -
Name
count 12
unique 12
top Ricky
freq 1
Sekarang, gunakan pernyataan berikut dan periksa hasilnya -
import pandas as pd
import numpy as np
#Create a Dictionary of series
d = {'Name':pd.Series(['Tom','James','Ricky','Vin','Steve','Smith','Jack',
'Lee','David','Gasper','Betina','Andres']),
'Age':pd.Series([25,26,25,23,30,29,23,34,40,30,51,46]),
'Rating':pd.Series([4.23,3.24,3.98,2.56,3.20,4.6,3.8,3.78,2.98,4.80,4.10,3.65])
}
#Create a DataFrame
df = pd.DataFrame(d)
print df. describe(include='all')
Nya output adalah sebagai berikut -
Age Name Rating
count 12.000000 12 12.000000
unique NaN 12 NaN
top NaN Ricky NaN
freq NaN 1 NaN
mean 31.833333 NaN 3.743333
std 9.232682 NaN 0.661628
min 23.000000 NaN 2.560000
25% 25.000000 NaN 3.230000
50% 29.500000 NaN 3.790000
75% 35.500000 NaN 4.132500
max 51.000000 NaN 4.800000