我想要Interate一个DataSetIterator并将其添加到DataSet中。迭代很容易:
while(iterator.hasNext()){ DataSet next = iterator.next(); dataSet.addRow(next,dataSet.numExamples()); //不是……
DataSet class有静态 merge() 方法。在这个方法上,你传递一个 List<DataSet> 并返回所有 DataSet 包含到 List 只有一个 DataSet 。
DataSet
merge()
List<DataSet>
List
ArrayList<DataSet> data_list = new ArrayList<DataSet>(); // add some data into data_list DataSet allData = DataSet.merge(data_list); // all DataSet into data_list are merged into allData
声明抛出的异常:
dataSet.addRow(next, dataSet.numExamples()); // isn't work
应该给你一个为什么它不工作的线索。
上面引发异常的可能原因是因为addRow()的第二个参数指定的行索引是0,所以有效值的范围从0到numExamples() - 1。
关于向DataSet添加行,请检查DataSet中是否有append()方法,或者是否需要调用者指定行索引的addRow()方法。要将一个DataSet实例与另一个实例合并,请检查是否有可用的merge()方法。
希望这可以帮助!