Pandas: cara merepresentasikan value_counts sebagai persentase


Anda dapat menggunakan fungsi value_counts() di panda untuk menghitung kemunculan nilai di kolom DataFrame tertentu.

Untuk menyatakan nilai sebagai persentase, Anda dapat menggunakan salah satu metode berikut:

Metode 1: Mewakili nilai sebagai persentase (diformat sebagai desimal)

 df. my_col . value_counts (normalize= True )

Metode 2: Mewakili nilai sebagai persentase (diformat dengan simbol persen)

 df. my_col . value_counts (normalize= True ). mul ( 100 ). round ( 1 ). astype (str) + ' % '

Metode 3: Mewakili Jumlah Nilai sebagai Persentase (dengan Hitungan)

 counts = df. my_col . value_counts ()
percs = df. my_col . value_counts (normalize= True )
p.d. concat ([counts, percs], axis= 1 , keys=[' count ', ' percentage '])

Contoh berikut menunjukkan cara menggunakan setiap metode dalam praktik dengan pandas DataFrame berikut:

 import pandas as pd

#createDataFrame
df = pd. DataFrame ({' team ': ['A', 'A', 'B', 'B', 'B', 'B', 'B', 'C'],
                   ' points ': [15, 12, 18, 20, 22, 28, 35, 40]})

#view DataFrame
print (df)

  team points
0 to 15
1 to 12
2 B 18
3 B 20
4 B 22
5 B 28
6 B 35
7 C 40

Contoh 1: Mewakili nilai sebagai persentase (diformat sebagai desimal)

Kode berikut menunjukkan cara menghitung kemunculan setiap nilai di kolom tim dan menyatakan kemunculan sebagai persentase dari total, dalam format desimal:

 #count occurrence of each value in 'team' column as percentage of total
df. team . value_counts (normalize= True )

B 0.625
At 0.250
C 0.125
Name: team, dtype: float64

Dari hasilnya kita dapat melihat:

  • Nilai B mewakili 62,5% kejadian di kolom tim.
  • Nilai A mewakili 25% kejadian di kolom tim.
  • Nilai C mewakili 12,5% kejadian di kolom tim.

Perhatikan bahwa persentase diformat sebagai desimal.

Contoh 2: Mewakili nilai sebagai persentase (diformat dengan simbol persen)

Kode berikut menunjukkan cara menghitung kemunculan setiap nilai di kolom tim dan menyatakan kemunculan sebagai persentase dari total, diformat dengan simbol persen:

 #count occurrence of each value in 'team' column as percentage of total
df. team . value_counts (normalize= True ). mul ( 100 ). round ( 1 ). astype (str) + ' % '

B 62.5%
At 25.0%
C 12.5%
Name: team, dtype: object

Perhatikan bahwa persentase diformat sebagai string dengan simbol persen.

Contoh 3: Mewakili Jumlah Nilai sebagai Persentase (Dengan Angka)

Kode berikut menunjukkan cara menghitung kemunculan setiap nilai di kolom tim dan menyatakan kemunculannya sebagai angka dan persentase:

 #count occurrence of each value in 'team' column
counts = df. team . value_counts ()

#count occurrence of each value in 'team' column as percentage of total
percs = df. team . value_counts (normalize= True )

#concatenate results into one DataFrame
p.d. concat ([counts, percs], axis= 1 , keys=[' count ', ' percentage '])

        count percentage
B 5 0.625
At 2 0.250
C 1 0.125

Perhatikan bahwa kolom hitungan menampilkan jumlah setiap nilai unik di kolom tim sedangkan kolom persentase menampilkan setiap nilai unik sebagai persentase dari jumlah total kemunculan.

Sumber daya tambahan

Tutorial berikut menjelaskan cara melakukan tugas umum lainnya di panda:

Pandas: cara memplot akun nilai
Pandas: Cara menggunakan GroupBy dan penghitungan nilai
Pandas: cara memplot histogram berdasarkan grup

Tambahkan komentar

Alamat email Anda tidak akan dipublikasikan. Ruas yang wajib ditandai *