PCA:如何在Pyspark python中获取方差表和图形的总和

问题描述

我在 Pyspark 中执行 PCA,下面的代码给了我 k = 12 个缩减维度的方差总和

#Dimension reduction using PCA
pca = PCA(k=17,inputCol = scaler.getoutputCol(),outputCol="pcaFeatures")
model = pca.fit(Product_score_data_scaled)

PCA_transformed_feature = model.transform(Product_score_data_scaled)

#Sum of Variance explained
np.round(100.00*model.explainedVariance.toArray(),4).sum()

我在原始数据中有 200 个特征。我怎样才能得到一个表,它有 k = 1 直到 K = 200 的方差总和,并将其绘制成图表以选择 pyspark 中的最佳 k?

我尝试了以下方法来创建表格。但是太费时间了

PC_count = []
variance = []
for k in range(1,len(cols_to_scale)):
  pca = PCA(k= k,outputCol="pcaFeatures")
  model = pca.fit(Product_score_data_scaled)
  variance.append(np.round(100.00*model.explainedVariance.toArray(),4).sum())
  PC_count.append(k)

解决方法

暂无找到可以解决该程序问题的有效方法,小编努力寻找整理中!

如果你已经找到好的解决方法,欢迎将解决方案带上本链接一起发送给小编。

小编邮箱:dio#foxmail.com (将#修改为@)