我有以下数据框:
List<yourclass> distinct =
yourlist
.GroupBy(item => item.Number)
.Select(g => g.First())
.ToList();
我想申请:
git remote prune origin
为了将列数从4减少到2 我无法理解哪个维度:行或列 PCA将其作为向量的数量。
因为如果我执行以下操作:
A B C D
0 4 1 1 78
1 82 2 58 41
2 53 3 31 76
3 1 45 4 12
5 5 2 4 87
6 1 74 6 11
7 1 1 6 47
8 1 1 6 8
它将返回以下错误:
ValueError:n_components = 3必须介于0和n_features = 1之间 svd_solver = '完全'
即使我在每个向量中只有1个数据,我仍然可以将向量的数量从4减少到3个。
答案 0 :(得分:0)
这是你使用PCA
的方法,注意我也在标准化这些值。
from sklearn.preprocessing import StandardScaler
from sklearn.decomposition import PCA
vals = df.ix[:, :4].values
vals_std = StandardScaler().fit_transform(vals)
sklearn_pca = PCA(n_components = 'however many you want')
vals_pca = sklearn_pca.fit_transform(vals_std)
然后根据您确定的许多尺寸,您可以将其添加回数据框。