質問をすることでしか得られない、回答やアドバイスがある。

15分調べてもわからないことは、質問しよう!

新規登録して質問してみよう
ただいま回答率
85.48%
Weka

Wekaは、ニュージーランドのワイカト大学で開発されたフリーの機械学習統合環境。Javaで記述されています。研究や教育など幅広く利用することが可能。データの前処理、さまざまな学習アルゴリズム、評価手法を理解することができ、データの可視化といったGUIも備わっています。

Python 3.x

Python 3はPythonプログラミング言語の最新バージョンであり、2008年12月3日にリリースされました。

Q&A

解決済

1回答

1504閲覧

python-weka-wrapperでのデータの読み込み

SnowBerryTart

総合スコア19

Weka

Wekaは、ニュージーランドのワイカト大学で開発されたフリーの機械学習統合環境。Javaで記述されています。研究や教育など幅広く利用することが可能。データの前処理、さまざまな学習アルゴリズム、評価手法を理解することができ、データの可視化といったGUIも備わっています。

Python 3.x

Python 3はPythonプログラミング言語の最新バージョンであり、2008年12月3日にリリースされました。

0グッド

0クリップ

投稿2019/12/02 23:27

前提・実現したいこと

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

気になる質問をクリップする

クリップした質問は、後からいつでもMYページで確認できます。

またクリップした質問に回答があった際、通知やメールを受け取ることができます。

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

guest

回答1

0

自己解決

読み込むファイルに空欄があったため
元のcsvファイルの編集で読み込めるようになりました。

投稿2019/12/03 00:56

SnowBerryTart

総合スコア19

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

あなたの回答

tips

太字

斜体

打ち消し線

見出し

引用テキストの挿入

コードの挿入

リンクの挿入

リストの挿入

番号リストの挿入

表の挿入

水平線の挿入

プレビュー

15分調べてもわからないことは
teratailで質問しよう!

ただいまの回答率
85.48%

質問をまとめることで
思考を整理して素早く解決

テンプレート機能で
簡単に質問をまとめる

質問する

関連した質問