When I am trying trying to apply classification on the data set with we are encountering error at cls.build_classifier(data).
please help us our.
from weka.classifiers import Classifier
import weka.core.jvm as jvm
jvm.start(system_cp=True, packages=True)
import weka.core.converters as converters
data = converters.load_any_file("KDDTrain.csv")
data.class_is_last()
#print(data)
cls = Classifier(classname="weka.classifiers.trees.J48", options=["-C", "0.3"])
cls.build_classifier(data)
for index, inst in enumerate(data):
pred = cls.classify_instance(inst)
dist = cls.distribution_for_instance(inst)
print(str(index+1) + ": label index=" + str(pred) + ", class distribution=" + str(dist))
error :
C:\Users\bhanu\PycharmProjects\main_project\venv\Scripts\python.exe C:/Users/bhanu/PycharmProjects/main_project/test_class.py
DEBUG:weka.core.jvm:Adding bundled jars
DEBUG:weka.core.jvm:Adding system classpath
DEBUG:weka.core.jvm:Classpath=['C:\\Users\\bhanu\\PycharmProjects\\main_project\\venv\\lib\\site-packages\\javabridge\\jars\\rhino-1.7R4.jar', 'C:\\Users\\bhanu\\PycharmProjects\\main_project\\venv\\lib\\site-packages\\javabridge\\jars\\runnablequeue.jar', 'C:\\Users\\bhanu\\PycharmProjects\\main_project\\venv\\lib\\site-packages\\javabridge\\jars\\cpython.jar', 'C:\\Users\\bhanu\\PycharmProjects\\main_project\\venv\\lib\\site-packages\\weka\\lib\\python-weka-wrapper.jar', 'C:\\Users\\bhanu\\PycharmProjects\\main_project\\venv\\lib\\site-packages\\weka\\lib\\weka.jar']
DEBUG:weka.core.jvm:MaxHeapSize=default
DEBUG:weka.core.jvm:Package support enabled
DEBUG:javabridge.jutil:Creating JVM object
DEBUG:javabridge.jutil:Signalling caller
weka.core.UnsupportedAttributeTypeException: weka.classifiers.trees.J48: Cannot handle numeric class!
weka.core.Capabilities.test(Capabilities.java:1067)
weka.core.Capabilities.test(Capabilities.java:1256)
weka.core.Capabilities.test(Capabilities.java:1138)
weka.core.Capabilities.testWithFail(Capabilities.java:1468)
weka.classifiers.trees.J48.buildClassifier(J48.java:277)
at weka.core.Capabilities.test(Capabilities.java:1067)
at weka.core.Capabilities.test(Capabilities.java:1256)
at weka.core.Capabilities.test(Capabilities.java:1138)
at weka.core.Capabilities.testWithFail(Capabilities.java:1468)
at weka.classifiers.trees.J48.buildClassifier(J48.java:277)
Traceback (most recent call last):
File "C:/Users/bhanu/PycharmProjects/main_project/test_class.py", line 10, in <module>
cls.build_classifier(data)
File "C:\Users\bhanu\PycharmProjects\main_project\venv\lib\site-packages\weka\classifiers.py", line 83, in build_classifier
javabridge.call(self.jobject, "buildClassifier", "(Lweka/core/Instances;)V", data.jobject)
File "C:\Users\bhanu\PycharmProjects\main_project\venv\lib\site-packages\javabridge\jutil.py", line 887, in call
result = fn(*nice_args)
File "C:\Users\bhanu\PycharmProjects\main_project\venv\lib\site-packages\javabridge\jutil.py", line 854, in fn
raise JavaException(x)
javabridge.jutil.JavaException: weka.classifiers.trees.J48: Cannot handle numeric class!
Regards
Bhanuprakash Vattikuti