import
java.io.BufferedReader;
import
java.io.FileReader;
import
weka.classifiers.bayes.NaiveBayes;
import
weka.classifiers.Evaluation;
import
weka.core.Instances;
public
class
WeatherNominal {
public
static
void
main(String args[]) {
try
{
NaiveBayes naivebayes =
new
NaiveBayes();
String weatherNominalDataset =
"/home/droid/Tools/weka-3-8-5/data/weather.nominal.arff"
;
BufferedReader bufferedReader =
new
BufferedReader(
new
FileReader(weatherNominalDataset));
Instances datasetInstances =
new
Instances(bufferedReader);
datasetInstances.randomize(
new
java.util.Random(
0
));
int
trainingDataSize = (
int
) Math.round(datasetInstances.numInstances() *
0.66
);
int
testDataSize = (
int
) datasetInstances.numInstances() - trainingDataSize;
Instances trainingInstances =
new
Instances(datasetInstances,
0
,trainingDataSize);
Instances testInstances =
new
Instances(datasetInstances,trainingDataSize,testDataSize);
trainingInstances.setClassIndex(trainingInstances.numAttributes()-
1
);
testInstances.setClassIndex(testInstances.numAttributes()-
1
);
bufferedReader.close();
naivebayes.buildClassifier(trainingInstances);
Evaluation evaluation =
new
Evaluation(trainingInstances);
evaluation.evaluateModel(naivebayes,testInstances);
System.out.println(evaluation.toSummaryString(
"\nResults"
,
false
));
}
catch
(Exception e) {
System.out.println(
"Error Occurred!!!! \n"
+ e.getMessage());
}
}
}