Başka bir soruda, bir dizi dizideki olay sayısını saymak için Counter()
kullanabileceğimi gördüm. Yani ['A','B','A','C','A','A']
varsa Counter({'A':3,'B':1,'C':1})
alırım. Ama şimdi, bu bilgiyi örneğin bir histogram oluşturmak için nasıl kullanabilirim?Histogram oluşturmak için Python'da Sayaç() kullanma?
cevap
Verileriniz için, bir çubuk grafik yerine histogram kullanmak muhtemelen daha iyidir.
from collections import Counter
import numpy as np
import matplotlib.pyplot as plt
labels, values = zip(*Counter(['A','B','A','C','A','A']).items())
indexes = np.arange(len(labels))
width = 1
plt.bar(indexes, values, width)
plt.xticks(indexes + width * 0.5, labels)
plt.show()
Sonuç: Yapacak bazı gerçekten özlü kodu yazabilirsiniz
OP'nin verileri bir histogram için en uygun durumdaysa ne olur? Oyuna geç olduğunu biliyorum, ama cevabınızı histogram örneğine uygulanacak şekilde güncellemek istiyorum (ancak henüz nasıl yapacağımı bilmiyorum). Bu sorunun başlığına cevap verirdi. –
@ThomasMatthew teknik olarak, bir histogramdır. "çubuk grafik yerine çubuk grafik", "matplotlib.pyplot.hist" yerine "matplotlib.pyplot.bar" kullanımına daha çok atıfta bulunur. Ben 'bar' (OP istediği) Counter ile daha iyi gider inanıyorum, bu o – Igonato
Ayrıca bu bir şey değişmiş olabilir 3 yaşındaki bir soru – Igonato
bu pandas kullanarak:
In [24]: import numpy as np
In [25]: from pandas import Series
In [27]: sample = np.random.choice(['a', 'b'], size=10)
In [28]: s = Series(sample)
In [29]: s
Out[29]:
0 a
1 b
2 b
3 b
4 a
5 b
6 b
7 b
8 b
9 a
dtype: object
In [30]: vc = s.value_counts()
In [31]: vc
Out[31]:
b 7
a 3
dtype: int64
In [32]: vc = vc.sort_index()
In [33]: vc
Out[33]:
a 3
b 7
dtype: int64
In [34]: vc.plot(kind='bar')
sonuçlanan:
bu koda bak- 1. Sınıf için sayaç değişkeni
- 2. Histogram
- 3. R - histogram
- 4. Bir arabirim oluşturmak için .NET's Reflection.Emit'i kullanma
- 5. Benzersiz kullanıcı kimliği oluşturmak için UDID kullanma
- 6. İç kenarlık oluşturmak için kutu boyutlandırmayı kullanma
- 7. Arabirim nesnesini oluşturmak için Generic'leri kullanma
- 8. Java'da tablo oluşturmak için hash eşlemelerini kullanma
- 9. Uygulama içinde Uygulama oluşturmak için ServerManager'ı kullanma
- 10. Reaktifleri oluşturmak için jquery seçicilerini kullanma
- 11. PHP dosyalarını oluşturmak için Gulp BrowserSync'i kullanma
- 12. Sekmeli bir pivot oluşturmak için VBA'yı kullanma
- 13. ng -eğer sayaç elle
- 14. Nümerik dizi veya pandalarla pythonda rutini sadeleştirme
- 15. Dikey Histogram
- 16. Histogram nasıl oluşturulur?
- 17. Yeni kayıtlar için bir boşluk oluşturmak için Html.EditorFor kullanma
- 18. Redis için Öntanımlı Bir Sayaç Aralığı Belirleyin
- 19. Matplotlib yığılmış histogram için facecolor kwarg
- 20. basit jquery ikinci sayaç
- 21. bir histogram olarak işaretlendiğinde Gauss formunun olan veri histogram
- 22. Veritabanında artan sayaç
- 23. Magento'daki sayaç sayacı
- 24. OpenCV Renk Konsantrasyon Histogram
- 25. Son kullanıcı belgelerini oluşturmak için Salatalık veya RSpec + Selenium kullanma?
- 26. Android'de rtsp istemcisi oluşturmak için Gstreamer veya ffmpeg'i kullanma
- 27. Üstün, karşılaştırmalı ve sıfatlar oluşturmak için Wordnet'i kullanma
- 28. C kütüphanesi oluşturmak için distutils ve build_clib kullanma
- 29. Bir dropdown oluşturmak için Razor DropDownList yardımcı programını kullanma
- 30. Farklı sınıflara sahip nesneler dizisi oluşturmak için raydaki jbuilder'i kullanma
İsterseniz histogram oluşturmak için numpy ve matplotlib kullanmanızı öneririm – jabaldonedo
Teknik olarak [matplotlib] (http://matplotlib.org/) –
'a bakın, bu * bir histogramdır - bileşenleri (harfleri) ve sıklığı vardır (meydana geldiklerinde). Bunu bir çubuk grafiğe nasıl dönüştüreceğinizi soruyor musunuz? –