【Alteryx関数シリーズ】テスト関数の使い方[2025Ver.対応]

Alteryxで使用できる関数の「テスト関数」の使い方をご紹介します

テストカテゴリの関数は、Null値の確認や文字列かどうかの判断などデータに対する確認を行います。

 

本記事はAlteryx Designer Version 2025.1.2の内容になりますので、Alteryx Designer Version 2019.1.6の場合は以下のリンクを参考にしてください。

 

テストカテゴリの関数一覧

やりたいこと 関数名 概要
2つの文字列を比較 CompareDictionary(a,b) 2つの文字列を辞書順に比較します
2つの数値を比較 CompareDigits(a, b, nNumDigits) 2つの数値を比較し、指定した桁数までの有効数字が同じか判断します
2つの数値を比較 CompareEpsilon(a, b, epsilon) 2つの数値の浮動小数点数を比較します
Nullまたは空白かテスト IsEmpty(v) v がNullまたは空白であるかテストします
Nullかテスト IsNull(v) v がNullかテストします
整数に変換できる値があるかテスト IsInteger(v) 整数に変換できる値があるかテストします
数値かテスト IsNumber(v) v が数値かテストします
空間オブジェクトかテスト IsSpatialObj(v) v が空間オブジェクトかテストします
文字列かテスト IsString(v) v が文字列かテストします
2つの文字列を比較 EqualStrings(a,b) 2つの文字列が等しいかどうか判定します
文字列が小文字かテスト IsLowerCase(String) 文字列がすべての小文字かをテストします
文字列が大文字かテスト IsUpperCase(String) 文字列がすべての大文字かをテストします

以下の関数は、Alteryx Designer Version 2019.1.6以降にAlteryxに追加された関数です。

  • EqualStrings (Version2024.1.1で追加)

  • IsLowerCase (Version2024.1.1で追加)

  • IsUpperCase (Version2024.1.1で追加)

各関数の使い方とサンプル

CompareDictionary ・・・ 2つの文字列を辞書順に比較します

CompareDictionary(a, b)

文字列 a と b を辞書順に比較します。順番が a < b の場合は「-1」、a = b の場合は「0」、a > b の場合は「1」を返します。

Sample

 

 

CompareDigits ・・・ 2つの数値を比較し、指定した桁数までの有効数字が同じか判断します

CompareDigits(a, b, nNumDigits)

数値 a、b を比較し、nNumDigits で指定した桁までの有効数字が同じ場合は -1(True) 、同じではない場合は 0(False) を返します。戻り値はBool型となります。

例えば、1.7 == 1.7を1.7e50 == 1.7e50と比較する場合など、整数以外の2つの数値を比較する場合に使用できる関数です。

 

Sample

注意

nNumDigits 引数は、 1 から 19 の間で必ず指定してください。整数以外を指定した場合は、最も近い整数に四捨五入されます。 (nNumDigits 引数は0.5~19.499 までの入力が可能です。)

 

CompareEpsilon ・・・ 2つの数値の浮動小数点数を比較します

CompareEpsilon(a, b, epsilon)

数値 a、b の浮動小数点数を比較し、その差が epsilon で設定した数値内にある場合は -1 (True)、ない場合は 0 False)を返します。戻り値はBool型となります。

 

Sample

 

IsEmpty ・・・ 値がNullまたは空白であるかテストします

IsEmpty(v)

指定した文字列 v が空白または Null である場合は -1(True)、それ以外の場合は 0False) の値を返します。戻り値はBool型となります。

 

Sample

IsNull ・・・ 値がNullかテストします

IsNull(v)

指定した文字列 v が Null である場合は -1(True)、それ以外の場合は 0 False)の値を返します。戻り値はBool型となります。

 

Sample

 

IsInteger ・・・ 整数に変換できる値があるかテストします

IsInteger(v)

指定した文字列 v に整数に変換できる値がある場合は -1(True)、それ以外の場合は 0 False)の値を返します。v として Null を指定した場合、0 が返ります。戻り値はBool型となります。

指定した v 列が文字列の場合も、整数に変換できる文字である場合は -1 (True) が返ります。

 

Sample

※元が文字列の場合に、数値であるかどうかの検証に利用可能です(ただし、数値以外の「.」(ドット)などは小数点として判断されず、あくまで0~9に合致するか、ということになりますので、ご注意ください)

 

IsNumber ・・・ 値が数値かテストします

IsNumber(v)

指定した値 v が数値型の場合は -1(True)、それ以外の場合は 0 False)の値を返します。戻り値はBool型となります。

注意点として、値自体が数値でもデータ型が文字列型であれば文字列型として判定されるため、実質としてはフィールドの型自体の判定になっています。

 

Sample

上の例では、v2の値は数値ですが、文字列型のため、数値ではないとして判断されています。

 

IsSpatialObj ・・・ 値が空間オブジェクトかテストします

IsSpatialObj(v)

指定した列が空間オブジェクトの場合は -1(True)、それ以外の場合は 0 False)の値を返します。戻り値はBool型となります。

 

Sample

 

IsString ・・・ 値が文字列かテストします

IsString(v)

指定した列が文字列の場合は -1(True)、それ以外の場合は 0 False)の値を返します。戻り値はBool型となります。

注意点として、値自体が数値でもデータ型が文字列型であれば文字列型として判定されるため、実質としてはフィールドの型自体の判定になっています。

 

Sample

上の例のように、文字列型であるv1、v2のフィールドは文字列型として判定されています(v2の値自体は数値にも関わらず)。

 

EqualStrings ・・・ 2つの文字列を比較し、同じ文字列かどうかを判断します

EqualStrings(a, b)

文字列 a と b を比較し、完全に一致する場合は True、一致しない場合は False を返します。大文字・小文字、空白も区別して比較されます。

 

IsLowerCase ・・・ 文字列がすべて小文字かどうかを判断します

IsLowerCase(String)

指定した文字列がすべて小文字で構成されている場合は True、1文字でも大文字が含まれている場合は False を返します。

 

IsUpperCase ・・・ 文字列がすべて大文字かどうかを判断します

IsUpperCase(String)

指定した文字列がすべて大文字で構成されている場合は True、1文字でも小文字が含まれている場合は False を返します。

 

 

サンプルワークフロー ダウンロード

FormulaFunction_Test 

※Alteryx Designer 2025.1.2時点の情報です

AlteryxDesigner初心者の方向け教育プログラム

京セラみらいエンビジョンでは、AlteryxDesignerをこれから利用していくお客様を対象に、初心者向けのトレーニングをご用意しております。

ハンズオン形式で実施致しており、使用し始めた方の上達をサポート致します。

トレーニング以外にもAlteryxを用いた環境構築、開発、ワークフロー作成を承りますので、お気軽にご相談ください。

おすすめの記事