2021/01/29
R連携
このコンテンツでは、16進数のデータを扱うために、Rを利用して10進数に変換する関数を作成する方法を説明していきます。
なお、本コンテンツで利用したSpotfireのバージョンは10.10/11.4です。ご利用環境によって、一部画面構成が異なる可能性がありますので、ご了承ください。
装置などから出力されるデータの中には、16進数の文字列が含まれていることがあります。
Spotfireで扱える型は文字列型、数値型などがありますが、16進数文字列はあくまで文字列としてしか扱えないため、一度10進数に変換する必要があります。
ただ、Spotfireの関数では16進数→10進数の変換関数はありません。
hex |
---|
ffff |
0fac |
12fc98 |
AC |
上の「hex」カラムのように、16進数だと文字列扱いになるので10進数に変換しないと計算ができません。
このような時には「データ関数の登録」機能で関数を追加すると便利です。
データ関数の登録機能を使うと、R言語を使用して独自の関数を定義できます。
「データ」→「データ関数のプロパティ」を選択し、
「式の関数」タブの「新規」をクリック
式の関数画面が開くので以下を設定します。
スクリプトは下記のように記載します。
式の関数の場合、入力カラムはinput1、出力カラムはoutputと記載する約束事になります。
これで登録は完了です。
「データ」→「計算カラムの追加」で確認できます。
関数の中に登録したhextodecが追加されています。
これで通常の関数と同じように使うことができます。また、計算カラムだけでなくカスタム演算式内でも使用できます。
前の記事
複数の計算カラムを一括作成次の記事
選択データのみ縦変換【R連携】最新の記事
output <- as.integer(as.hexmode( input1 ))