2017-07-19 14 views
0

Rコードを使用するHANAでプロシージャを作成しようとしています。その結果、欠損値を数えたいと思っています。私はR StudioでRコードを試してみました、それが動作します:HANA:Rの作成中にエラーが発生する

DROP Table "THESIS"."THESIS_FOLDER::COUNT_MISSING_VALUES"; 
CREATE Column TABLE "THESIS"."THESIS_FOLDER::COUNT_MISSING_VALUES" (RESULT" INT ); 

DROP PROCEDURE "THESIS"."ANALYSE_MISSINGDATA"; 
Create PROCEDURE "THESIS"."ANALYSE_MISSINGDATA" (IN input _SYS_BIC"."THESIS_FOLDER/CA_SAMPLE", OUT OUTPUT_DATA "THESIS"."THESIS_FOLDER::COUNT_MISSING_VALUE") 
LANGUAGE RLANG AS 
BEGIN 

result<-sapply(input, function(x) sum(is.na(x))) 
OUTPUT_DATA<-data.frame(RESULT=result) 

END; 

Call "THESIS"."ANALYSE_MISSINGDATA"("_SYS_BIC"."THESIS_FOLDER/CA_SAMPLE",?); 

しかし、私はこれをしようとすると、私は次のエラーを取得する: SAP DBTech JDBC:[2048]:列ストアエラー:検索テーブルエラー:[34084]エラーを受け取る:結果のエラーを取得する;失敗:オブジェクト 'output_data'が見つかりません。

誰かが私が間違っていたことを知っていますか?

ありがとうございました。

答えて

1

エラーメッセージの原因は、出力変数を大文字で参照することです。 は"SAP HANA R Integration Guide"を確認してください:

The variable names from the procedure definition should not contain uppercase letters. Therefore, the variable names in R should also not contain upper-case letters

だけoutput_data<-data.frame(RESULT=result)OUTPUT_DATA<-data.frame(RESULT=result)を変更し、あなたのコードは動作するはずです。

関連する問題