手元に数式がなかったので、ひとまずネットで検索。数式は微妙に違いましたが、だいたいこんな感じ(それで良いのか?)
一次元のカーネル密度推定式
\begin{align*}\hat{f}(x) = \frac{1}{nh} \sum_{i=1}^n K\bigg(\frac{x-x_i}{h}\bigg)\end{align*}
n:データ数
h:バンド幅
x:計算位置
xi:i番目のデータ(例えばi番目の観測値)
K():カーネル関数
h:バンド幅
x:計算位置
xi:i番目のデータ(例えばi番目の観測値)
K():カーネル関数
x位置でのK()を足してnhで割っています。
\begin{align*}\ K(\nu)=\frac{1}{\sqrt{2\pi \sigma^2}}\exp{\left\{-\frac{(\nu-\mu)^2}{2\sigma^2}\right\}}
\end{align*}
EXCELだと、手間。面倒。
そもそも、EXCELでは約105万行までのデータしか扱えません。1000万データなど、開くこともできません。
Pythonだと、簡単。
sns.kdeplot(X,bw=0.05)
seabornだけでなく、他にも複数のライブラリが KDE に対応しています。
ひとまず、700万行×13列のデータは一気に処理できました。便利。
0 件のコメント:
コメントを投稿