2025/01/28
アドバンスド
※本記事は11/28開催セミナー「TIBCO Spotfire活用セミナー 実務において役立つ関数 -文字列操作-」で紹介した内容です。
このコンテンツでは、セミナー内で取り上げた関数をご紹介します。過去の記事「実務において役立つ関数①」、「実務において役立つ関数②」、「実務において役立つ関数③」で紹介済みの関数は割愛しております。
利用したバージョンは、Spotfire Analyst 14.0です。ご利用環境によって、一部画面構成が異なる場合がありますので、ご了承ください。
本コンテンツでは、データの前処理・可視化において頻出の「関数」をご紹介いたします。Spotfireには、計算カラムやカスタム演算式の中で利用できる「関数」が多数用意されています。文字列操作で使えるテキスト関数を活用することで、新しいカラムの作成や複雑な集計が可能となるため、Spotfireで分析する上で欠かせない機能になっています。
本コンテンツで紹介する関数一覧は下記の通りです。
カテゴリ | 関数 | 説明 |
---|---|---|
基本的な関数 | Upper/Lower | 文字列を大文字のみ または 小文字のみに置換 |
Mid | 任意の位置から指定した文字数分を抽出 | |
& | 文字列の結合 | |
Len | 文字列の長さを返す | |
Repeat | 指定した回数だけ文字列を繰り返す | |
応用的な関数 | RXExtract | 文字列内の正規表現パターンに一致する部分を検索または抽出 |
RXReplace | 正規表現に従って文字列内の特定の部分を置換 |
本コンテンツでは、各関数の説明・表記方法を下記に統一しています。
引数を示す際は、式の左から順に「Arg1」、「Arg2」のように表記します。
例:Sum([Arg1], [Arg2])
文字列を大文字のみ または 小文字のみに置換
Upper(Arg1) 、Lower(Arg1)
年、エラーコード、型番が含まれる文字列を大文字または小文字に置換します。
黄色の点線で囲まれている箇所が関数の適用結果を表します。
大文字に置換する式:Upper([年-エラーコード-型番])
小文字に置換する式:Lower([[年-エラーコード-型番])
任意の位置から指定した文字数分を抽出
Mid(Arg1, Arg2, Arg3)
型番、シリアル番号が含まれる文字列からシリアル番号を抽出します。
式:mid([型番] - [シリアル番号],4,6)
文字列の結合
Arg1 & Arg2
型番とシリアル番号の文字列を連結します。
式:[型番] & ”-” & [シリアル番号]
文字列の長さを返す
Len(Arg1)
携帯の電話番号の桁数を確認し、IF文を組み合わせ13桁か判定しています。
桁数を確認する式:Repeat(”0”,7-Len([シリアル番号])) & [シリアル番号]
携帯番号が13桁か確認する式:If(Len([携帯電話の番号])=13,”Valid Number”,”Invalid Number”)
指定した回数だけ文字列を繰り返す
Repeat(Arg1 , Arg2)
シリアル番号の桁数を統一するため、必要に応じて文字列の”0”を追加します。
式:Repeat(”0”,7-Len([シリアル番号])) & [シリアル番号]
指定した文字列の中から正規表現のパターンに一致する部分を検索/抽出
RXExtract( [Arg1], [Arg2], [Arg3] )
エラーコードデータにRXExtract関数を適用して、エラーコードの抽出および、”ERROR”が含まれるか確認します。
エラーコードを抽出する式:RXExtract([エラーコード],”ERROR:([0-9]+)”,1)
“ERROR” が含まれるか確認する式:RXExtract([エラーコード],”ERROR”,1)
正規表現に従って文字列内の特定の部分を置換
RXReplace(Arg1, Arg2, Arg3, Arg4)
エラーコードデータにRXExtract関数を適用して、エラーコードの削除(空白に置換)および、”ERROR”を”ERROR_number”に置換します。
エラーコードを削除する式:RXReplace([エラーコード],”ERROR:\\d+”,” ”,”g”)
“ERROR_number”に置換する式:RXReplace([エラーコード],”ERROR”,”ERROR_number”,” ”)
文字列内に“ERROR”が含まれる場合:”エラー”と表示
文字列内に“WARNING”が含まれる場合:”警告”と表示
式:case
when RXExtract([エラーコード],”ERROR”,1) Is Not Null then “エラー”
when RXExtractt([エラーコード],”WARNING”,1) Is Not Null then “警告”
end
改行が含まれるデータをSpotfireで読み込むと、改行後のデータは表示されませんが、RxReplaceを使うことで改行を削除して表示できます。
式:RXReplace([設備ログ],”\n”,””)
Spotfire活用セミナー
アーカイブ動画を配信中
【アドバンスド】最新の記事