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