2020/12/21
R連携
SpotfireではTERRと呼ばれるR言語のランタイムエンジンが搭載されており、単体でR言語を走らせることができます。今回はTERRをテーマに3回に分けて説明します。第1回目は、TERRに関する概要と、TERRのデータをSpotfire本体側で取得するSpotfireとの連携方法について説明します。
なお、本コンテンツで利用したSpotfireのバージョンは10.10/11.4です。ご利用環境によって、一部画面構成が異なりますので、ご了承ください。
TERRは「TIBCO Enterprise Runtime for R」の略で、R言語のランタイムエンジンです。このエンジンを使用することで、Spotfireの可視化と高度な統計解析、数理モデルを用いた分析が可能になります。
TERRを利用するためには、TERRとSpotfire本体との連携が必要となります。次の3つの操作を紹介します。
1. TERRのデータをSpotfire本体で取得する
2. Spotfire本体からTERRにパラメータを渡す
3. Spotfire本体からTERRにデータテーブルを渡す
本コンテンツでは、「1. TERRのデータをSpotfire本体で受け取る」について記載します。
まず初めに、SpotfireにバンドルされているTERRを使用する設定になっていることを確認します。Spotfireを起動後、「ツール」メニューから「オプション」を選択してください。「オプション」ダイアログが表示されますので、「データ関数」タブを選択してください。
画面の中段に「ローカルにインストールされたTIBCO Enterprise for Rを使用」というチェック項目があります。この項目がチェックされていることを確認し、「OK」でダイアログを閉じてください。
次に、「ツール」メニューから「TERRツール」を選択してください。
「TERRツール」ダイアログが表示されます。「ローカル TERRエンジンのパス」項目が自身のクライアントPC端末のファイルパスとなっていることを確認してください。問題なければ、「閉じる」をクリックしてダイアログを閉じてください。これで事前準備は完了です。
このセクションのゴールは、TERRで作成したデータをSpotfire本体で受け取り、データテーブルとして表示することです。これを実現するには、R言語で作成したスクリプトを含む関数を、Spotfireに登録する必要があります。この機能をSpotfireでは「データ関数」と呼んでいます。データ関数を登録するステップをご紹介します。
まず、Spotfireの「ツール」メニューから「データ関数を登録」を選択してください。「データ関数の登録」ダイアログが表示されます。
中段の「タイプ」を「R スクリプト – TIBCO Enterprise Rutime for R」に選択してください。
今回は正規分布に従ったランダムな値を100件発生させ、そのデータをSpotfire本体に渡します。
「スクリプト」タブを選択し、余白に下記のRコードを挿入してください。このコードはrnorm_datatableに100件のランダムな値を格納するソースコードとなっています。
次に、「出力パラメータ」タブを選択してください。ここでは、Rスクリプト上で作成したデータをSpotfire本体に渡す設定をします。画面右側の「追加」ボタンをクリックします。
「出力パラメータ」ダイアログが表示されました。先程作成したrnorm_datatableというR上のテーブルデータを、rnormという名称でSpotfire側に渡す設定を行います。以下のとおり入力し、「OK」でダイアログを閉じます。
設定項目 | 概要 | 値 |
---|---|---|
結果パラメータ | TERRから取得するパラメータ名 | rnorm_datatable |
表示名前 | 出力パラメータでの表示名 | rnorm |
タイプ | 結果パラメータのデータ形式 (値、カラム、テーブル) |
テーブル |
1つ前のダイアログに戻り、「パラメータ項目」に登録した出力パラメータが登録されていることがわかります。それではこのスクリプトを実行するために、ダイアログ右上の「実行」ボタンをクリックしてください。
「パラメータの編集」ダイアログが表示されます。ここでは、TERRから渡すパラメータをSpotfire本体側でどのように受け取るかを指定します。
中段の出力パラメータでは、先程設定したrnormがテーブル形式のデータとして認識されています。
「出力」タブを選択し、出力ハンドラで「データテーブル」を選択してください。Spotfire側でデータテーブルとして受け取ることができます。
「新しいデータテーブルの作成」が選択されていることを確認し、「OK」をクリックしてください。これでスクリプトが実行されました。
Spotfireの左中段画面のノートマークをクリックし、インポートされているデータを確認してください。rnormが確認できますので、データテーブルで表示させてください。テーブル名がrnormとなっており、100件の乱数が生成されていることがわかります。
Spotfire活用セミナー
アーカイブ動画を配信中
前の記事
データキャンバスの使い方(ハンズオン)次の記事
TERR連携-2(Rにパラメータを渡す)【R連携】最新の記事
rnorm_datatable = rnorm(100)