繁体   English   中英

Python Scikit-Learn PCA:获取组件分数

[英]Python Scikit-Learn PCA: Get Component Score

我正在尝试执行工作的主成分分析。 虽然我已经成功地完成了主要组件的布局,但是我真的不知道如何为每个订单项分配最终的组件分数。 我正在寻找这样的输出。

Town       PrinComponent 1 PrinComponent 2 PrinComponent 3
Columbia     0.31989       -0.44216        -0.44369
Middletown  -0.37101       -0.24531        -0.47020
Harrisburg  -0.00974       -0.06105         0.32792
Newport     -0.38678        0.40935        -0.62996 

scikit-learn文档在这种情况下没有帮助。 有人可以向我解释我如何实现此输出吗?

我到目前为止的代码如下。

def perform_PCA(df):
    threshold = 0.1
    pca = decomposition.PCA(n_components=3)
    numpyMatrix = df.as_matrix().astype(float)
    scaled_data = preprocessing.scale(numpyMatrix)
    pca.fit(scaled_data)    
    pca.transform(scaled_data)

    pca_components_df = pd.DataFrame(data = pca.components_,columns = df.columns.values)
    #print pca_components_df
    #pca_components_df.to_csv('pca_components_df.csv')

    filtered = pca_components_df[abs(pca_components_df) > threshold]
    trans_filtered= filtered.T
    #print filtered.T #Tranformed Dataframe
    trans_filtered.to_csv('trans_filtered.csv')
    print pca.explained_variance_ratio_

我将转换后的数组泵送到DataFrame函数的数据部分,然后通过分别将它们分别放入column =index =来定义索引和column。

pd.DataFrame(data=transformed, columns=["PC1", "PC2"], index=df.index)

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM