【发布时间】:2017-05-22 06:12:49
【问题描述】:
我自己制作了一个随机数据,其中包含一个包含 18 行和 5 列的文本文件,其中包含所有整数条目。
我成功地进行了 PCA,但现在卡住了。我无法做散点图。这是我的代码:
f=open(r'<path>mydata.txt')
print(f.read()) #reading from a file
with open(r'<path>mydata.txt') as f:
emp= []
for line in f:
line = line.split()
if line:
line = [int(i) for i in line]
emp.append(line)
from sklearn.decomposition import PCA
import pylab as pl
from itertools import cycle
X = emp
pca = PCA(n_components=3, whiten=True).fit(X)
X_pca = pca.transform(X) #regular PCA
现在,完成 PCA 并知道我的方差后,我该如何绘图?
这是我的数据集中的示例数据的外观:
2 1 2 3 0
2 3 2 3 0
1 3 1 1 0
1 5 2 1 0
2 3 1 1 0
3 3 0 1 0
7 1 1 1 1
7 2 2 1 1
1 1 1 4 1
3 2 3 2 1
2 2 2 2 1
1 3 2 3 1
2 3 2 1 2
2 2 1 1 2
7 5 3 2 2
3 4 2 4 2
2 1 1 1 2
7 1 3 3 2
【问题讨论】:
-
为问题添加一些上下文,您想用散点图显示什么,示例数据集中的列是什么,您编写了哪些代码来解决问题。
-
样本数据的最后一列代表一种类型,我将数据分为三种类型。该数据类似于 Fisher 的 Iris 数据集,但数字是捏造的。我希望散点图以聚类的形式向我展示不同的类型。
-
this 回答你的问题了吗?
-
@Skynet 在 PCA 之后,由于我的数据现在减少到 3 维,我应该考虑哪些数组?因为,如果您可以在上面看到我的代码,则数据已被制成列表列表。现在,我想在 PCA 之后做一个散点图,以便点聚集。数据类似于 Fisher Iris 数据。
-
那么您是在问我们,如何在散点图中可视化数据的某些行/列(会是哪些?),或者您是在问我们,您应该考虑哪些行/列?在第一种情况下,我们可以帮助您,在第二种情况下,您可能问错了地方。例如,有一个 StackExchange 站点专门用于统计数据,称为 CrossValidated。
标签: python matplotlib statistics anaconda data-science