目前我有两个类我的ImageMatrix类和我的ImageMatrixDB类,这些类本质上应该构建一个8×8像素的矩阵到一个数组中以便稍后操作。我正在使用一些数据集,我希望也应用一些mahcine学习算法。 (参见data description和sample dataset。)因为它看起来像java文件:
ImageMatrix.java
public class ImageMatrix {
int[] data;
int classCode;
public ImageMatrix(int[] data, int classCode) {
assert data.length == 64;
this.data = data;
this.classCode = classCode;
}
public int[] getData() {
return data;
}
public int getClassCode() {
return classCode;
}
}
ImageMatrixDB.java
import java.io.*;
import java.util.*;
public class ImageMatrixDB implements Iterable<ImageMatrix> {
private List<ImageMatrix> list = new ArrayList<>;
public static ImageMatrixDB load(File f) throws IOException {
ImageMatrixDB result = new ImageMatrixDB();
try (FileReader fr = new FileReader(f);
BufferedReader br = new BufferedReader(fr)) {
for (String line; null != (line = br.readLine()); ) {
int lastComma = line.lastIndexOf(',');
int classCode = Integer.parseInt(line.substring(1 + lastComma));
int[] data = Arrays.stream(line.substring(0, lastComma).split(","))
.mapToInt(Integer::parseInt)
.toArray();
result.list.add(new ImageMatrix(data, classCode));
}
}
return result;
}
public Iterator<ImageMatrix> iterator() {
return this.list.iterator();
}
}
我的问题源于以可读格式输出数据。我想知道是否有人可以告诉我我的主要应该是什么样的输出数据,因为我在尝试加载文件时不断出现错误。
再次感谢。