随机生成原始数据分布,共计300个点,服从正态分布。为了便于区分X方向和Y方向。使X方向服从均值为50,标准差为50的正态分布,Y方向服从均值为0,标准差为100的正态分布。
手动旋转
θ=45
度。先构建旋转矩阵rot,可以在wiki中找到rot矩阵的定义
rot=[cos(θ),−sin(θ);sin(θ),cos(θ)]
然后执行选择操作, X=rot∗X ,得到旋转45度后的分布
到了求主成份的时候了。先求协方差矩阵 c=XXT 。然后分解协方差矩阵,求得特征值 d 和特征向量
启发:
1.主成份的特征向量可以起到旋转的作用;
2.在二维平面中,旋转矩阵其实就是新定义的两个特征向量的方向,不用死记,画个图就记住了。
怎样理解下图呢?先求X方向的变化,就把下面的矩形框中 cosθ 和 −sinθ 填到旋转矩阵的第一列中,然后把右边的矩形框中的 sinθ 和 cosθ 先到第二列中。
rot=[cos(θ),−sin(θ); sin(θ),cos(θ)]
先记录X方向,再记录Y方向,所以填入矩阵的顺序是
cos(θ),−sin(θ),sin(θ),cos(θ)
这个图是偏理解,理解这个图之后,就记住旋转向量了,同时也就知道的特征向量的作用。