RLOGICAL( ) 関数
R の関数またはスクリプトによって計算された論理値を返します。R によるデータ処理は Analytics の外部で行われます。
構文
RLOGICAL(rScript|rCode <,フィールド|値 <,...n>>)
パラメーター
名前 | 種類 | 説明 |
---|---|---|
rScript | rCode |
文字 |
実行する R コードのスニペットまたは R スクリプトの絶対または相対パス。 外部ファイルを使用せずに直接 R コードを入力する場合、コード内では、前後の引用符文字はエスケープしても使用することはできません。
|
フィールド|値 <,...n>
省略可能 |
文字 数値 日付時刻 論理 |
R スクリプトまたは R コード スニペットの引数として使用するフィールド、式、リテラル値から成るリスト。 値は呼び出す関数に指定順に渡されます。また、値を参照するには、R コード内で「value1, value2 ... valueN」を使用します。 R コードの関数定義を満たすのに必要な数の引数を指定できます。 メモ 文字入力から先頭と末尾の空白を除去するには、ALLTRIM(str) のように ALLTRIM() 関数を使用します。詳細については、ALLTRIM( ) 関数を参照してください。 |
出力
論理。
例
基本的な例
T が返されます。
RLOGICAL("(value1>0.6) & (value2>0.7) & (value3>0.5)", 0.8, 0.9, 0.55)
高度な例
外部 R スクリプトを使用する
金額と上下限値を入力として取ります。一連の論理比較に基づいて、真理値が返されます。
RLOGICAL("a<-'c:\\scripts\\sample.r');a[[1]]", expense_amt, threshold_low, threshold_hi)
外部 R スクリプト(sample.r):
test_truth <- function(amt, low, hi) { return(((amt > low) & (amt < hi)) | ((amt==low) | (amt==hi))) } test_truth(value1, value2, value3)
変数に格納された R コードの使用
次の例は、AND ロジックを使って 3 つのフィールドの論理テストを行っています。
v_rcode = "(value1>0.6) & (value2>0.7) & (value3>0.5)" RLOGICAL(v_rcode, PACKED, MICRO_LONG, ACCPAC)
備考
R からデータを返す
R スクリプトを呼び出す場合、source 関数を使用して、戻りオブジェクトを変数に割り当てます。次に、R 関数から返されて戻りオブジェクトに格納された値に、次のようにアクセスできます。
# 'a' はレスポンス オブジェクトを格納し、a[[1]] はデータ値にアクセスしています "a<-source('c:\\scripts\\r_scripts\\sample.r');a[[1]]"
R のログ ファイル
R 言語のメッセージは、Analytics によりプロジェクト フォルダーの aclrlang.log ファイルに記録されます。このファイルを使って、R のエラーをデバッグします。
ヒント
ログ ファイルは Analytics Exchange のアナリティクス ジョブの結果フォルダーにあります。
AX Server での外部 R スクリプトの実行
AX Server で実行する分析アプリを作成していて、外部の R スクリプトを使用したい場合は、次の手順を実行します。
- 分析アプリとともに、このファイルを関連ファイルとしてアップロードします。
- このファイルを指定する際、FILE ANALYTIC タグを使用します。
- ファイルの参照には、相対パス ./filename.r を使用します。
メモ
関連ファイルを使用することで、Analytics Exchange とともに R を実行する際に、TomEE アプリケーション サーバーのアカウントに、このファイルにアクセスするための十分な権限が与えられます。