16進数から10進数へ変換

16進数から10進数への変換

装置などから出力されるデータの中に16進数の文字列が含まれていることがあります。

Spotfireで扱える型は文字列型、数値型などがありますが、
16進数文字列はあくまで文字列としてしか扱えないため、一度10進数に変換する必要があります。
ただ、Spotfireの関数では16進→10進の変換関数はありません。

1
↑16進だと文字列扱いになるので10進変換しないと計算ができない。

このような時にはデータ関数の登録機能で関数を追加すると便利です。

データ関数の登録

データ関数の登録機能を使うと、R言語を使用して独自の関数を定義できます。

「編集」→「データ関数の登録」を選択し、
2

新規ボタンをクリック
3

式の関数画面が開くので
名前と説明、登録する関数のカテゴリと戻り型を定義します。
4
スクリプトは下記のように記載します。

output <- as.integer(as.hexmode( input1 ))

式の関数の場合は
入力カラムはinput1、出力カラムはoutputと記載する約束事になります。

これで登録は完了です。

計算カラムで確認

「挿入」→「計算カラム」で確認してみましょう。
5
計算の関数の中に確かに登録したhextodecが追加されています。
これで通常の関数と同じように使う事ができます。

6

勿論計算カラムだけでなくカスタム演算式内でも使用できます。