CodeBlanks Logo Icon CodeBlanks

Histogram

Histogram, verilerin dağılımını sütunlarla gösterir.

Histogram

Histogram tek bir değişkenin dağılımını gösterir: değer aralığı kutulara (bins) bölünür, her kutuya düşen örnek sayısı çubuk olarak çizilir. Çarpıklık, çok tepelilik ve aykırı değerler burada görünür.

fig, ax = plt.subplots()
ax.hist(x, bins=20, edgecolor="black")
sayi, sinir = np.histogram(x, bins=20)   # aynı sayımlar, çizimsiz

np.histogram, çizmeden aynı kutu sayımlarını ve sınırlarını verir.

Kutu sayısı ve karşılaştırma

Az kutu ayrıntıyı gizler, çok kutu gürültü üretir. Sınıfları karşılaştırmak için histogramlar aynı eksende yarı saydam çizilir:

for k in [0, 1]:
    ax.hist(X[y == k, 0], bins=20, alpha=0.5, label=f"sınıf {k}")
ax.legend()

İki sınıfın histogramları çok örtüşüyorsa o özellik sınıfları ayırmakta zayıftır.

Uygulama Dağılımı say

x için 4 kutulu bir histogram çiz ve kaydet. Aynı sayımları np.histogram(x, bins=4) ile al; sayımları ve sınırları alt alta yazdır.

Başlangıç kodu

model.py
import numpy as np
import matplotlib.pyplot as plt

x = np.array([1, 2, 2, 3, 3, 3, 4, 4, 5, 9])

# buraya yaz

Örnek çözüm

model.py
import numpy as np
import matplotlib.pyplot as plt

x = np.array([1, 2, 2, 3, 3, 3, 4, 4, 5, 9])

fig, ax = plt.subplots()
ax.hist(x, bins=4)
fig.savefig("hist.png")
sayi, sinir = np.histogram(x, bins=4)
print(sayi)
print(sinir)

Beklenen çıktı

[3 5 1 1]
[1. 3. 5. 7. 9.]

Soru ve cevaplar

Dersin sorularını cevaplarıyla birlikte inceleyebilirsin. Kendini denemek istersen dersi interaktif olarak çöz.

1 <code>np.histogram(x, bins=10)</code> kaç kutu sınırı döndürür?

  • 9
  • 20
  • 11 Doğru cevap
  • 10

Açıklama: 10 kutunun başı ve sonu: 11 sınır; sayım dizisi 10 elemanlıdır.

2 Lejantı göster.

Soru
ax.____()
Cevap
ax.legend()

Açıklama: legend, label verilmiş çizimlerin açıklamasını çizer.

3 Kavramları eşleştir.

Kavram Anlamı
bins Kutu sayısı
np.histogram Çizimsiz sayım
label Lejant metni
örtüşen histogram Zayıf ayırıcı özellik

Başlangıç bölümündeki tüm dersler