Предполагая, что вы хотите double[][]
, действуйте следующим образом:
Соберите все double[]
s в ArrayList<double[]>
.
В конце используйте list.toarray(new double[list.size()][])
илианалогично преобразованию списка динамической длины в массив fixed length.
Или вы непосредственно выделяете выходной массив, поскольку Instances
уже знает количество атрибутов и экземпляров.
Остерегайтесь, что double[][]
не является строго матрицей.Он может быть рваным, то есть строки могут иметь различную длину.Кроме того, приведенный выше код будет производить транспонированную матрицу, вероятно, не то, что вы ожидаете.Скорее всего, вы захотите перебрать экземпляры и использовать instance.toDoubleArray()
.
Любым способом проверьте исходный код attributeToDoubleArray
, чтобы понять, что Weka делает внутри, чтобы дать вам некоторые идеи, как действовать.