我有一套" 2维"我必须使用PCA分解研究的数据。 作为第一步,我尝试使用matplotlib.mlab库:
import numpy as np
from matplotlib.mlab import PCA
data = np.loadtxt("Data.txt")
result = PCA(data)
#....
然后我比较了" Data.txt"的散点图。使用mlab找到的主要组件(存储在result.Wt中)。结果如下:
mlab attempt
正如您所看到的,结果不是最佳的。因此,我尝试使用sklearn.decomposition库执行相同的操作:
import numpy as np
from sklearn.decomposition import PCA
data = np.loadtxt("Data.txt")
pca = PCA(n_components=2,whiten=True)
pca.fit(data)
结果这段时间要好得多:sklearn attempt
我真的不希望这两个库之间的结果差异很大。我的问题是:我的结果有如此大的差异的可能原因是什么?
答案 0 :(得分:1)
一如既往地提出不可复制的问题(<?php
$test=mysql_query("SELECT * FROM siteler");
$sayi=mysql_num_rows($test);
$deneme=mysql_fetch_row($test);
?>
<div class='container'>
<div class='row'>
<?php
while ($deneme=mysql_fetch_assoc($test)) {
extract($deneme);
echo "<div class='col-md-3 col-sm-6 col-xs-12 back-colour'>
<p>$site_name </p>
<p>$site_info </p>
<p>$site_ref </p>
<p>$bet_turu </p>
</div>";
}
?>
</div>
</div>
):让我们猜猜!
我在这里猜测,在matplotlib的情况下,你绘制的PCA轴是标准数据,但确实绘制了原始数据(显然不是以平均值为中心,仅作为轴上的正值)。 / p>
所以: