HANA:创建 R 程序时出错

HANA: Error while creating R Procedure

我正在尝试在 HANA 中创建一个使用 R 代码的过程。结果,我想计算缺失值。我在 R Studio 中尝试了 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]:列存储错误:搜索 table 错误:[34084] 接收错误:获取结果错误。;失败:找不到对象 'output_data'。

有人知道我做错了什么吗?

谢谢。

错误消息的原因是您使用大写字母引用输出变量。 检查 "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),您的代码应该可以正常工作。