Hi, this is the command i used to generate Multi-label stream. Basically, i just use all the default settings.
WriteStreamToARFFFile -s generators.multilabel.MetaMultilabelGenerator -f /home/h/hd168/111.arff -m 3 -h -O /home/h/hd168/222.moa
However, it will lead me to this error.
Failure reason: Failed writing to file /home/h/hd168/111.arff
*** STACK TRACE ***java.lang.RuntimeException: Failed writing to file /home/h/hd168/111.arff
at moa.tasks.WriteStreamToARFFFile.doMainTask(WriteStreamToARFFFile.java:86)
at moa.tasks.MainTask.doTaskImpl(MainTask.java:50)
at moa.tasks.AbstractTask.doTask(AbstractTask.java:57)
at moa.tasks.TaskThread.run(TaskThread.java:76)
Caused by: java.lang.NullPointerException
at com.yahoo.labs.samoa.instances.SparseInstanceData.locateIndex(SparseInstanceData.java:237)
at com.yahoo.labs.samoa.instances.SparseInstanceData.setValue(SparseInstanceData.java:220)
at com.yahoo.labs.samoa.instances.InstanceImpl.setValue(InstanceImpl.java:269)
at moa.streams.generators.multilabel.MetaMultilabelGenerator.generateMLInstance(MetaMultilabelGenerator.java:274)
at moa.streams.generators.multilabel.MetaMultilabelGenerator.nextInstance(MetaMultilabelGenerator.java:228)
at moa.streams.generators.multilabel.MetaMultilabelGenerator.nextInstance(MetaMultilabelGenerator.java:46)
at moa.tasks.WriteStreamToARFFFile.doMainTask(WriteStreamToARFFFile.java:80)
... 3 more
Seems it can not set class value to an instance and the reason is in SparseInstanceData.class, the indexValues[] is null.