java – 不推荐使用FastVector类型
发布时间:2020-12-15 02:54:42 所属栏目:Java 来源:网络整理
导读:我试图从 Java中的多维数组获取arrf扩展输出文件.我导入了weka库,但是我收到了错误;类型FastVector E已弃用. 我可以使用什么代替FastVector以及如何重写下面的代码? import weka.core.FastVector; //Error: The type FastVectorE is deprecated. int [][] m
我试图从
Java中的多维数组获取arrf扩展输出文件.我导入了weka库,但是我收到了错误;类型FastVector< E>已弃用.
我可以使用什么代替FastVector以及如何重写下面的代码? import weka.core.FastVector; //Error: The type FastVector<E> is deprecated. int [][] myArray = new int[45194][12541]; for (int i = 0; i < myArray.length; i++) { for (int j = 0; j < myArray[0].length; j++) { System.out.print(myArray[i][j]+" "); } System.out.println(""); } int numAtts = myArray[0].length; FastVector atts = new FastVector(numAtts); for (int att = 0; att < numAtts; att++) { atts.addElement(new Attribute("Attribute" + att,att)); } int numInstances = myArray.length; Instances dataset = new Instances("Dataset",atts,numInstances); for (int inst = 0; inst < numInstances; inst++) { dataset.add(new Instance(1.0,myArray[inst])); //Error: Cannot instantiate the type Instance } BufferedWriter writer = new BufferedWriter(new FileWriter("test.arff")); writer.write(dataset.toString()); writer.flush(); writer.close(); 解决方法
Weka现在大多数地方使用类型化ArrayLists.您可以使用ArrayList< Attribute>为了这:
ArrayList<Attribute> atts = new ArrayList<Attribute>(); for (int att = 0; att < numAtts; att++) { atts.add(new Attribute("Attribute" + att,att)); } (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |