16進数から10進数への変換
装置などから出力されるデータの中に16進数の文字列が含まれていることがあります。
Spotfireで扱える型は文字列型、数値型などがありますが、
16進数文字列はあくまで文字列としてしか扱えないため、一度10進数に変換する必要があります。
ただ、Spotfireの関数では16進→10進の変換関数はありません。
↑16進だと文字列扱いになるので10進変換しないと計算ができない。
このような時にはデータ関数の登録機能で関数を追加すると便利です。
データ関数の登録
データ関数の登録機能を使うと、R言語を使用して独自の関数を定義できます。
式の関数画面が開くので
名前と説明、登録する関数のカテゴリと戻り型を定義します。
スクリプトは下記のように記載します。
output <- as.integer(as.hexmode( input1 ))
式の関数の場合は
入力カラムはinput1、出力カラムはoutputと記載する約束事になります。
これで登録は完了です。
計算カラムで確認
「挿入」→「計算カラム」で確認してみましょう。
計算の関数の中に確かに登録したhextodecが追加されています。
これで通常の関数と同じように使う事ができます。
勿論計算カラムだけでなくカスタム演算式内でも使用できます。