我手上有一个分了三个区域然后每个区域12个特征点,一共三十六维,需要降到2维,然后画图,目前就是不知道如何处理手上的数据。
目前我想到的也是主成分分析,但是对原始数据的处理我还不太明白,现在这个36维的数据应该是一个怎样的形式输入进pca呢
在这种情况下,你可以使用主成分分析(PCA)来降维。PCA是一种常用的降维技术,它可以找到数据集中的主要方向,并将数据降维到更低维度的空间中。
在python中,你可以使用sklearn库中的PCA函数来实现主成分分析。示例代码如下:
from sklearn.decomposition import PCA
# 实例化PCA
pca = PCA(n_components = 2)
# 进行降维
X_reduced = pca.fit_transform(X)
# 画图
plt.scatter(X_reduced[:, 0], X_reduced[:, 1])
plt.show()
上面的代码中,n_components参数代表要降维到的维度,X是你的原始数据。fit_transform方法会计算出所有主成分,并返回降维后的数据。
最后,你可以使用matplotlib库中的scatter函数来绘制降维后的数据点。
你的描述有些模糊。
(1)3个区域各 12个特征点,共 36维。这3个区域的各 12维是各不相同相互独立的吗?要检查一下到底是 12维还是 36维。
(2)如果是 36维,那么你有多少样本数呢?假设样本数为 n,则 PCA 的输入矩阵是 (n,36)。
(3)你该不是一共有 36个特征点,分布在 3个区域吧?那么你不是有 36维,而是有 36个样本。