Inc.BLOGブログ2019.09.17RapidMinerpython-rapidminerでpythonからRapidMinerを呼び出すみなさんこんにちは!KSKアナリティクスの岡地です。今回は、PythonからRapidMinerを呼び出す「python-rapidminer」をご紹介いたします!python-rapidminerとは?python-rapidminerとは、2019年5月にRapidMiner社が作成したpythonとRapidMinerをつなぐためのpythonライブラリです。python-rapidminerができることは以下の3つです。・RapidMinerにあるデータをpythonで読み込む・pythonからRapidMinerにデータを出力する。・pythonからRapidMinerのプロセスを実行して結果をpythonで受け取る。今回はGitHubにpython-rapidminerのチュートリアルが上がっているのでそれを参考に簡単に使ってみます。python-rapidminerのインストールpython-rapidminerのインストールは以下のコマンドで簡単にできます。installただし、以下の点に気をつけてください。9.3.0がインストールされていること使用する場合は、まずConnectorオブジェクトを作成する必要があります。Studioのロケーションを入力します。Studio.app/Contents/Resources/RapidMiner-Studio”RapidMinerにあるデータをpythonで読み込むRapidMinerからpythonへデータを読み込む場合は以下のコードを実行します。処理が終われば停止するみたいです。したがって、上記のコードの実行には少し時間がかかります。"//Samples/data/Golf"])のようにリストで複数のパスを指定すると、何度もRapidMinerを起動せずに済みます。pythonからRapidMinerへデータを書き出すまず、python側でデータを準備します。0pythonからRapidMinerへデータを書き出す場合は以下のコードを実行します。Repository/data/sklearn_iris")すると、以下のようにRapidMinerでデータを読み込むことができます。複数のデータをRapidMinerに書き出すことができます。Repository/data/Wine"])pythonからRapidMinerのプロセスを実行するまず、pythonから実行するプロセスを表示します。このプロセスは”//Samples/processes/02_Preprocessing/01_Normalization”です。これをpythonから実行する場合は以下のコードを実行します。connector.run_process("//Samples/processes/02_Preprocessing/01_Normalization")また、run_processは引数inputとoperatorを指定することによって、pythonからデータを渡し、RapidMinerのオペレータを実行することができます。pythonから渡すデータはwineデータです。以下のコードでは、相関の高い変数をわざと作成しています。Attributesオペレータ)を適用します。01_RemoveCorrelatedFeaturesプロセスは以下のようになっています。operator="RemoveCorrelatedFeatures")相関の高い変数が削除されていることがわかります。'nonflavanoid_phenols']RapidMinerで作成したモデルをpythonで受け取れるのかここまでご覧いただいた方は、RapidMinerで作成したモデルをpythonで受け取れるのかという疑問をお持ちになったかもしれません。私も同じ疑問を持ったので、検証してみました。irisデータに決定木を適用し、モデルを作成するプロセスを用意しました。このプロセスをpythonから実行して、決定木のモデルを受け取ろうとしてみます。extension.どうやら、拡張子.iooは扱えませんとエラーが出るようです。現状では、RapidMinerで作成したモデルをpythonには渡せないみたいですね、、、このあたりは今後のアップデートに期待ですね!いかがでしたでしょうか。みなさんも一度python-rapidminerを使ってみてください!最後まで読んで頂き、ありがとうございました。