前提・実現したいこと
forを用いて繰り返し、学習データとテストデータの読み込みと予測を行いたいです。
ただそのデータの読み込みが上手くいかずどうしていいのかが分かりません。
読み込もうとしているデータは、'learning_hoge_i.csv'(i=0~99)です。
よろしくお願い致します。
該当のソースコード
import weka.core.jvm as jvm from weka.core.converters import Loader from weka.classifiers import Classifier from weka.classifiers import Evaluation import numpy as np import pandas as pd #ファイル名の指定 filename = 'hoge' #お約束? jvm.start() pred = [] for i in range(100): #学習データの読み込み loader = Loader(classname='weka.core.converters.CSVLoader') learning = loader.load_file('learning_{0}_{1}.csv'.format(filename, i)) learning.class_is_first() #テストデータの読み込み loader = Loader(classname="weka.core.converters.CSVLoader") test = loader.load_file('test_{0}_{1}.csv'.format(filename, i)) test.class_is_first() #モデルの構築 cls = Classifier(classname="weka.classifiers.trees.M5P") cls.build_classifier(learning) #構築したモデルによる予測 evaluation = Evaluation(test) evl = evaluation.test_model(cls, test) pred.append(evl[0]) df = pd.DataFrame(pred) df = df.T df.to_csv('test.csv')
発生している問題・エラーメッセージ
JavaException Traceback (most recent call last) <ipython-input-8-6ea222f7efc9> in <module> 18 #学習データの読み込み 19 loader = Loader(classname='weka.core.converters.CSVLoader') ---> 20 learning = loader.load_file('learning_{0}_{1}.csv'.format(filename, i)) 21 learning.class_is_first() 22 #テストデータの読み込み ~\Anaconda3\envs\tensorflow\lib\site-packages\weka\core\converters.py in load_file(self, dfile, incremental) 86 return self.structure 87 else: ---> 88 return Instances(javabridge.call(self.jobject, "getDataSet", "()Lweka/core/Instances;")) 89 90 def load_url(self, url, incremental=False): ~\Anaconda3\envs\tensorflow\lib\site-packages\javabridge\jutil.py in call(o, method_name, sig, *args) 885 ret_sig = sig[sig.find(')')+1:] 886 nice_args = get_nice_args(args, args_sig) --> 887 result = fn(*nice_args) 888 x = env.exception_occurred() 889 if x is not None: ~\Anaconda3\envs\tensorflow\lib\site-packages\javabridge\jutil.py in fn(*args) 852 x = env.exception_occurred() 853 if x is not None: --> 854 raise JavaException(x) 855 return result 856 else: JavaException: 56 Problem encountered on line: 2
回答1件
あなたの回答
tips
プレビュー
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。