2017-08-11 86 views
0

我期待深入瞭解我的數據。我使用sklearn PCA將它們轉換成VSM,並將它們繪製成matplotlib圖形。這涉及繪製新文檔以繪製散點圖

  1. 使用管道

    test = pipeline.fit_transform(docs).todense() 
    
  2. 件到我的模型鑄造的文件的數量矩陣

    pca = PCA().fit(test) 
    
  3. 然後我使用變換

    data = pca.transform(test) 
    
    將其轉換
  4. 最後我用繪製Matplotlib

    plt.scatter(data[:,0], data[:,1], c = categories) 
    

我的問題,結果是這樣的:我如何採取新的句子,並確定他們將在於相對於其他文件繪製。用X標記他們的相對位置?

感謝

回答

1
  1. 也蒙上了新的文件,數字數組

    new = pipeline.transform(new_docs).todense() 
    

    注意,這裏使用了pipeline與先前安裝參數,因此它pipeline.transform,不pipeline.fit_transform

  2. 使用預先安裝pca變換新的數據。

    new_data = pca.transform(new) 
    

    這會將新數據轉換爲與原始數據相同的PC空間。

  3. 使用第二個scatter將新數據添加到圖中。

    plt.scatter(data[:,0], data[:,1], c = categories) 
    plt.scatter(new_data[:,0], new_data[:,1], marker = 'x') 
    plt.show()