kiura時系列項目がカラムとしてまとめられているのをよく見ます。人間が読むには非常にわかりやすいのですが、コンピュータに制御させる場合は色々問題があります。色の基準でNameにすると表現できます。横軸の並びはアスキー順になるのでカスタムの並び替えにしなければならなかったり、そもそも文字列扱いされているので、時間として扱う事ができません。データの縦変換このような場合にデータを縦変換すると便利です。以前データ変換でピボットの解除の方法をご紹介したのですが、ピボットの解除は横データを縦型に変換するため、時間もかかりデータのボリュームも膨れ上がります。今回のデータも横に18パラメータあるので、100行あった場合は1800行になります。ピボットの解除はデータテーブルを一括変換する事しかできないので元データが数万行あった場合は時間もリソースも無駄に消費します。必要なデータだけ縦変換する方法として、TERRを使用する方法を紹介します。名前は任意でOKですが、reshape2パッケージを使用しますのでパッケージの欄に”reshape2′′と入力してください。※reshape2は標準パッケージではないので初回使用時にはダウンロードして追加する必要があります。こちらを参考にパッケージを追加してください。スクリプトに下記スクリプトを記入してください。idの項目はキーとして保持するカラム名のリストを設定してください。ここではindataを入力として縦変換(melt)したデータをoutdataとして受け取ります。indataとoutdataの定義もしていきます。入力パラメーターとしてindataを定義します。「使用可能なデータ型」は「すべて」を選択して下さい。出力パラメータ出力用にoutdataを定義します。「追加」から「結果パラメータ」outdata「タイプ」は「テーブル」を選択してください。準備が完了したので実行してみます。右上にある実行ボタンを押してスクリプトを実行します。実行時のパラメータとデータの割り当てを設定します。入力パラメータは、マークした範囲のデータを変換したいのでindataは「カラム」で検索式’*’にしておきます。これでカラムが可変になった場合でも対応できます。「制限の基準」で「マークされたロー」のチェックを忘れないでください。これを設定しないと全データが一度に渡されるので元も子もないです。outdataをSpotfire側で扱う方法を選択します。データテーブルで「新しいデータテーブルの作成」を選択します。「OK」を押すと実行されます。元データ(一行)を選択するとoutdataには18行作成されることが分かります。Bを選択するとoutdataが更新されます。ちなみにvariableカラムが文字列型なのでminutesカラムを計算カラムとして追加しました。式は下記のとおりです。(勿論R言語側で処理してもいいのですが、忘れました。)このように複数行を選択した場合でも適時データが更新されます。大量データを扱っていて、必要な箇所だけ縦変換する事ができました。横軸を時間で取り、色別に回帰を取りました。パッケージがない場合reshape2は標準パッケージではないので初回使用時にはダウンロードして追加する必要があります。こちらを参考にパッケージを追加してください。パッケージがない場合、左下のステータス表示にエラーが表示されます。Reserved.ツールバーへスキップログイン。