从网上找样本数据太不好找了,尤其是想看看多分类的那种数据;而且数据量都偏小,不好玩。
得,还是自己造数据,当然规则自己拟。
自己造数据,生成arff文件。
static private void genArffData(String arffPath, int numRows, int numFields, int numClasses) throws FileNotFoundException {
// 生成一个n+1字段的随机数据,准备做多分类
Random random = new Random(Calendar.getInstance().getTimeInMillis());
File arff = new File(arffPath);
PrintWriter writer = new PrintWriter(new BufferedOutputStream(new FileOutputStream(arff)));
writer.println("@RELATION \"LogisticRegression FakeData\"");
writer.println();
int i=0;
for (; i<numFields; ++i) {
writer.println("@ATTRIBUTE " + (char)('A'+i) + " REAL");
}
writer.print("@ATTRIBUTE " + (char)('A'+i) + " {");
for (i=0; i<numClasses; ++i) {
if (i>0) writer.print(',');
writer.print((char)('0'+i));
}
writer.println('}');
writer.println();
writer.println("@DATA");
float [] values = new float[numFields];
for (i=0; i<numRows; ++i) {
for (int j=0; j<numFields; ++j) {
values[j] = random.nextFloat();
writer.print