2015-04-20 31 views
0

我有一個關於數據挖掘的任務。我有兩個要求:如何從文件構造相似函數

  1. 我需要能夠讀取並顯示文件」
    • 我幾乎得到了這個覆蓋
  2. 我需要建立相似的功能和距離。 。矩陣

我的代碼:

import java.io.File; 
import java.io.FileNotFoundException; 
import java.util.Scanner; 

public class ReadExample3 { 

    public static void main(String[] args) { 
    String fileName = "dataset.txt";// TODO Auto-generated method stub 
    File file = new File(fileName); 

    try { 
     Scanner inputStream = new Scanner(file); 
     // double sum = 0; 

     while (inputStream.hasNext()) { 
     String data = inputStream.next(); 

     System.out.println(data); 
     } 
     inputStream.close(); 
    } 

    catch (FileNotFoundException e) { 
     // TODO Auto-generated catch block 
     e.printStackTrace(); 
    } 
    } 
} 

我的等式爲:

功能= SQRT((POW((X1-X2),2))+(POW((X1-X3),2))+ ... n)的

那麼距離矩陣是一個類似於表的結果。

這是我的一些數據集。

1000025,2,5,1,1,1,2,1,3,1,1 
1002945,2,5,4,4,5,7,10,3,2,1 
1015425,2,3,1,1,1,2,2,3,1,1 
1016277,2,6,8,8,1,3,4,3,7,1 
1017023,2,4,1,1,3,2,1,3,1,1 
1017122,4,8,10,10,8,7,10,9,7,1 
1018099,2,1,1,1,1,2,10,3,1,1 
1018561,2,2,1,2,1,2,1,3,1,1 
1033078,2,2,1,1,1,2,1,1,1,5 
1033078,2,4,2,1,1,2,1,2,1,1 
1035283,2,1,1,1,1,1,1,3,1,1 
1036172,2,2,1,1,1,2,1,2,1,1 
1041801,4,5,3,3,3,2,3,4,4,1 
1043999,2,1,1,1,1,2,3,3,1,1 
1044572,4,8,7,5,10,7,9,5,5,4 
1047630,4,7,4,6,4,6,1,4,3,1 
1048672,2,4,1,1,1,2,1,2,1,1 

其中第一線是id和用於計算其餘線

如何調用中的ID號碼2 = 1000025然後在ID = 1002945添加到號碼2。我是否需要首先聲明它或者是從文件中直接調用並插入計算函數的其他方法?

然後計算繼續,直到文件結束。請注意id = 1000025中的數字是常數x1。同時x2是需要計算的另一個id的編號。

+1

問題是什麼?看來你的任務非常清楚,那麼你爲什麼不問問你的老師應該提供什麼? – GhostCat

+0

你想讓我們給你它的代碼?問題是什麼? – CKing

+0

不是真的。我想學習如何調用文件中的數據並插入到計算函數中。抱歉不清楚。 @Jägermeister – mbhb93

回答

0

您已完成逐行讀取數據。

現在,而不是僅僅打印String,你應該解析它並分開數字。

  • 您可以使用String#split方法使用逗號作爲分隔符來分隔它們。
  • 該方法將爲每行返回一個String的數組。
  • 然後,您可以使用Integer.parseInt方法將它們轉換爲int
  • 將這些整數填充到整數數組中。
  • 將數組插入到ArrayList,這樣您就不必擔心大小。

現在,讀完文件後,您可以根據需要訪問所有數字並將它們放入函數中。

希望這會有所幫助。
祝你好運。

相關問題