如何在dask数据帧上使用增量PCA?

时间:2019-11-26 09:29:39

标签: python pandas dask

我使用的dask数据帧由于大小而无法直接加载到内存中。我想在使用增量PCA的基础上进行三维还原。

我的数据框本质上是稀疏的,所以问题是我可以执行它吗?如果可以,那么如何执行。

image_features_df.head(3)
   feat1   feat2   feat3  ...  feat25087    feat25088   fid   selling_price
0   0.0    0.0     0.0    ...   0.0          0.0         2       269.00
4   0.3    0.1     0.0    ...   0.0          0.8         26      1720.00    
6   0.8    0.0     0.0    ...   0.0          0.1         50      18145.25

以上是我的数据框的视图。我希望输出具有95%的累积方差。怎么做?

我的数据框有100,000行和25088列,所以请告诉我一个节省内存的解决方案。

1 个答案:

答案 0 :(得分:0)

看看dask-ML https://ml.dask.org/modules/generated/dask_ml.decomposition.PCA.html中的PCA实现, 这可能已经适合您的情况,因为它使用tsqr算法(https://arxiv.org/abs/1301.1071