とても馬鹿な筆者のための、忘備録。
二次元ヒストグラムの最大値は一次元ヒストグラムの最大値と一致するとは限らないと気が付いたが、本当にそうなのかを確かめたかった。
つまり下図のように、x, y方向の一次元ヒストグラムがガウシアンのようであっても、二次元ヒストグラム次第では最大値は一致しない。
xの最頻値を二次元ヒストグラムのピーク位置から求めると、誤ってしまう例でもある。
(1次元ヒストグラムのxのピークを読みましょう)
import numpy as np
import pandas as pd
import seaborn as sns
import matplotlib.pyplot as plt
h = np.asarray((
(3,5),
(3,5),
(3,5),
(3,5),
(4,4),
(4,4),
(4,5),
(4,5),
(4,6),
(4,6),
(5,1),
(5,2),
(5,3),
(5,4),
(5,5),
(5,6),
(5,7),
(5,8),
(5,9),
(6,3),
(6,4),
(6,5),
(6,6),
(6,7),
(7,4),
(7,5),
(7,6),
))
df = pd.DataFrame(data=h,columns=['x','y'],dtype='uint8')
x_name = 'x'
y_name = 'y'
x_data = df['x']
y_data = df['y']
sns.jointplot(x = x_data, y = y_data,kind='kde',xlim=[0,10],ylim=[0,10])
plt.xlabel(x_name)
plt.ylabel(y_name)
plt.show()