2014-11-24 52 views
3

我想對使用Java的數據集合執行線性迴歸。我有幾個問題..對數據執行線性迴歸(來自.arff文件) - JAVA,Weka

  1. 線性迴歸方法接受哪些數據類型? 因爲我試圖以純名義格式和數字加載數據,但是當我試圖將「數據」(在程序中創建的實例變量)傳遞給線性迴歸時,它給了我這個例外。 無法處理多值標稱類

  2. 如何能夠在java中將線性迴歸輸出打印到控制檯。我無法通過預定義的LinearRegression.java類生成代碼,我知道buildClassifier()是將'data'作爲輸入文件的方法。但後來我無法前進。任何人都可以幫助我理解要輸出到控制檯的步驟順序。

    protected static void useLinearRegression(Instances data) throws Exception{ 
    
    BufferedReader reader = new BufferedReader(new FileReader("c:\somePath\healthCare.arff")); 
    Instances data = new Instances(reader); 
    data1.setClassIndex(data1.numAttributes() - 1); 
    LinearRegression2 rl=new LinearRegression2(); 
    rl.buildClassifier(data); //What after this? or before 
    

回答

2
  1. 線性迴歸應該接受名義和數字數據類型。只是目標類不能是標稱數據類型。

  2. 該模型的toString()方法應該能夠吐出模型(其他分類器選項也可能需要根據您的需要),但是如果您也在預測和總結之後,您可能還需要一個評估對象。在那裏,您可以使用toSummaryString()toMatrixString()獲取有關生成的模型的其他統計信息。

希望對您有所幫助!

+0

多數民衆贊成我就是這樣做,甚至在我檢查回來之前,結果:D,但非常感謝喲幫助。我正在完成任務,我留下了一個簡單的邏輯。屬性選擇將完成,然後對於那些特定的屬性,我必須執行線性迴歸。這是怎麼做到的。我有這個想法,但不知道如何繼續下去,使用這些選定的屬性,我必須創建一個csv文件** - >將其轉換爲arff->將此文件提供給buildClassifier( ),在線性迴歸中。如果這是正確的過程,**如何建立一個具有選定屬性的csv文件?** – Sashi 2014-11-25 01:04:01

+0

有一個[AttributeSelectedClassifier](http://weka.sourceforge.net/doc.dev/weka/classifiers/meta/AttributeSelectedClassifier。 html),可以在訓練指定的分類器之前選擇您的特徵。祝你好運! – 2014-11-25 01:08:33