我有一个变量,其中包含一些影响创建的 weka 模型的参数。我想自动更改参数值。我有以下内容:
String c [] ={"1.0", "10.0", "20.0", "30.0", "40.0", "50.0", "60.0","70.0", "80.0",
"90.0","100.0", "200.0", "300.0", "400.0","500.0", "600.0", "700.0", "800.0", "1000.0",
"2000.0"};
System.out.println(c[1]);
String opt = ("-C "+c[0] +"-L 0.001 -P 1.0E-12 -N 0 -V -1 -W 1 -K
weka.classifiers.functions.supportVector.PolyKernel -C 250007 -E 1.0 ");
String [] options = opt.split(" ");
obj.train(new File(obj.str.get(2)), options);
我想在循环内自动更改 C 参数。但是,当我写下以下内容时:
String opt = ("-C "+c[1] +"-L 0.001 -P 1.0E-12 -N 0 -V -1 -W 1 -K weka.classifiers.functions.supportVector.PolyKernel -C 250007 -E 1.0 ");
我收到一个 java.lang.NumberFormatException
:对于输入字符串。我可能需要做什么才能正常工作?错误在上面代码的最后一行。
最佳答案
我试一试:
String c [] ={"1.0", "10.0", "20.0", "30.0", "40.0", "50.0", "60.0","70.0", "80.0", "90.0","100.0", "200.0", "300.0", "400.0","500.0", "600.0", "700.0", "800.0", "1000.0", "2000.0"};
for (i = 0; i < c.length; i++){
String opt = String.format("-C %S 1.0 -L 0.001 -P 1.0E-12 -N 0 -V -1 -W 1 -K weka.classifiers.functions.supportVector.PolyKernel -C 250007 -E 1.0 ",c[i]);
}
我使用了 String.format("", ...) 函数并添加了 %S 作为占位符,其中将放入 c[i] 的值。
关于java - java.lang.NumberFormatException 问题,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/22322768/