javaで分類器を作る課題を行っています.
ソースコードにエラーは出ないのですが,なぜか実行後にエラーが発生して止められてしまいます.
java
1import java.io.BufferedReader; 2import java.io.File; 3import java.io.FileReader; 4import java.io.IOException; 5 6public class term2_2 { 7 8 public static void main(String args[]) { 9 //処理対象の行数 10 int cnt_line = 1; 11 //データの各要素を格納 12 String[][] data = new String[5][150]; 13 double[] cls = new double[100]; 14 15 double judge = 0; 16 int miss = 0; 17 18 try { 19 File f = new File("iris.txt"); 20 BufferedReader br = new BufferedReader(new FileReader(f)); 21 22 String line = br.readLine(); 23 24 for (int n=0; n<100; n++) { 25 for (int i = 0; i < 5; i++) { 26 //文字列を分割して配列に格納 27 String[] iris = line.split(" ", 0); 28 data[i][cnt_line - 1] = iris[i]; 29 } 30 judge = 0.33 + Double.parseDouble(data[0][cnt_line])*0.23 31 + Double.parseDouble(data[1][cnt_line])*(-0.38) 32 + Double.parseDouble(data[2][cnt_line])*(-0.05) 33 + Double.parseDouble(data[3][cnt_line])*(0.47); 34 35 if(judge > 0) cls[cnt_line] = 1; 36 else cls[cnt_line] = 2; 37 38 if(Double.parseDouble(data[4][cnt_line]) != cls[cnt_line]) miss++; 39 40 cnt_line++; 41 line = br.readLine(); 42 } 43 44 System.out.println("百分率:"+(100-miss)); 45 46 br.close(); 47 } catch (IOException e) { 48 System.out.println(e); 49 } 50 } 51 52}
このコードを実行すると以下のエラーメッセージが表示されてしまいます.
java
1Exception in thread "main" java.lang.NullPointerException 2 at sun.misc.FloatingDecimal.readJavaFormatString(FloatingDecimal.java:1838) 3 at sun.misc.FloatingDecimal.parseDouble(FloatingDecimal.java:110) 4 at java.lang.Double.parseDouble(Double.java:538) 5 at term2.term2_2.main(term2_2.java:32) 6
どなたか解決策をご教授ください
回答1件
あなたの回答
tips
プレビュー