利用java编写程序,访问kddcup99数据集,采用如下代码获得Instances,
public static Instances getArffFile(String FileName)throws Exception
{
DataSource source= new DataSource(FileName);
Instances ins = source.getDataSet();
if(ins.classIndex()==-1)
ins.setClassIndex(ins.numAttributes()-1);//这一句一定不要少
//System.out.println("\n"+FileName+"数据集读取完毕,总共样本个数是:"+ins.numInstances()+"个!\n");
return ins;
}
结果提示如下:
Exception in thread "main" java.lang.OutOfMemoryError: Java heap space
at sun.misc.FloatingDecimal.readJavaFormatString(Unknown Source)
at java.lang.Double.valueOf(Unknown Source)
at weka.core.converters.ArffLoader$ArffReader.getInstanceFull(Unknown Source)
at weka.core.converters.ArffLoader$ArffReader.getInstance(Unknown Source)
at weka.core.converters.ArffLoader$ArffReader.readInstance(Unknown Source)
at weka.core.converters.ArffLoader$ArffReader.readInstance(Unknown Source)
at weka.core.converters.ArffLoader.getDataSet(Unknown Source)
at weka.core.converters.ConverterUtils$DataSource.getDataSet(Unknown Source)
at conceptDrift.detection.method.read_copy_arff.getArffFile(read_copy_arff.java:24)
at conceptDrift.detection.method.read_copy_arff.main(read_copy_arff.java:35)
于是去修改 eclipse.ini的-Xmx 256m 为 -Xmx1024m ,双击eclipse.exe 提示
但改为-Xmx512,则能顺利打开eclipse.exe.不知道是怎么回事?