Table of Contents
ヒストグラムは統計学の基本であり、データの分布状況を把握するために使います。データの分布を集計するには「階数」(横軸)を定義します。この階数の要素は、ビン(もしくはカテゴリ、バケツ)と呼びます。ビンを算出する式は以下の式で表せます。

nはビン、mはデータの要素を示します。つまりk個のmの和がビンということです。
CPUでヒストグラムを実装するのは驚くほどシンプルです。下記のソースコードでは、ヒストグラムを集計している行はわずか1行です。
ヒストグラムの集計(CPU).
import numpy as np
from numpy.random import *
# Set the seed to 100
np.random.seed(100)
DATA_SIZE = 1024
BIN_SIZE = 256
data = randint(0, BIN_SIZE, DATA_SIZE).astype(np.uint8)
histogram = np.zeros(BIN_SIZE).astype(np.uint8)
for i in range(DATA_SIZE):
histogram[data[i]] += 1 #(1)
print(sum(histogram))
配列の添字をdata[i]として、該当する添字の要素をインクリメントします。 |
上記のプログラムの出力は以下のようになります。
出力.
1024
Copyright 2018-2019, by Masaki Komatsu