Pandalar: value_counts'un yüzde olarak nasıl temsil edileceği
Bir DataFrame’in belirli bir sütunundaki değerlerin oluşumlarını saymak için pandalarda value_counts() işlevini kullanabilirsiniz.
Değerleri yüzde olarak temsil etmek için aşağıdaki yöntemlerden birini kullanabilirsiniz:
Yöntem 1: Değerleri yüzde olarak temsil etme (ondalık sayı olarak biçimlendirilmiş)
df. my_col . value_counts (normalize= True )
Yöntem 2: Değerleri yüzde olarak gösterme (yüzde simgeleriyle biçimlendirilmiş)
df. my_col . value_counts (normalize= True ). mul ( 100 ). round ( 1 ). astype (str) + ' % '
Yöntem 3: Değer Sayılarını Yüzde Olarak Gösterme (Sayılarla)
counts = df. my_col . value_counts () percs = df. my_col . value_counts (normalize= True ) p.d. concat ([counts, percs], axis= 1 , keys=[' count ', ' percentage '])
Aşağıdaki örnekler, her yöntemin pratikte aşağıdaki pandalar DataFrame ile nasıl kullanılacağını gösterir:
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
Örnek 1: Değerleri yüzde olarak temsil etme (ondalık sayı olarak biçimlendirilmiş)
Aşağıdaki kod, ekip sütunundaki her bir değerin oluşumunun nasıl sayılacağını ve oluşumların toplamın yüzdesi olarak ondalık formatta nasıl temsil edileceğini gösterir:
#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
Sonuçtan şunları görebiliriz:
- B değeri, ekip sütunundaki oluşumların %62,5’ini temsil eder.
- A değeri, ekip sütunundaki oluşumların %25’ini temsil eder.
- C değeri, takım sütunundaki oluşumların %12,5’ini temsil eder.
Yüzdelerin ondalık sayı olarak biçimlendirildiğini unutmayın.
Örnek 2: Değerleri yüzde olarak temsil etme (yüzde simgeleriyle biçimlendirilmiş)
Aşağıdaki kod, takım sütunundaki her bir değerin oluşumunun nasıl sayılacağını ve oluşumların yüzde sembolleriyle biçimlendirilmiş olarak toplamın yüzdesi olarak nasıl temsil edileceğini gösterir:
#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
Yüzdelerin, yüzde simgeleri içeren dizeler olarak biçimlendirildiğini unutmayın.
Örnek 3: Değer Sayılarını Yüzde Olarak Gösterme (Rakamlarla)
Aşağıdaki kod, ekip sütunundaki her bir değerin oluşumunun nasıl sayılacağını ve oluşumların sayı ve yüzde olarak nasıl temsil edileceğini gösterir:
#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
Sayım sütununun ekip sütunundaki her benzersiz değerin sayısını görüntülediğini, yüzde sütununun ise her benzersiz değeri toplam oluşum sayısının yüzdesi olarak görüntülediğini unutmayın.
Ek kaynaklar
Aşağıdaki eğitimlerde pandalarda diğer ortak görevlerin nasıl gerçekleştirileceği açıklanmaktadır:
Pandalar: değer hesaplarının grafiği nasıl çizilir
Pandalar: GroupBy ve değer sayıları nasıl kullanılır?
Pandalar: histogramların gruba göre grafiği nasıl çizilir