Do not input private or sensitive data. View Qlik Privacy & Cookie Policy.
Skip to main content

Announcements
Want to see what's currently in public preview? We've pulled it all together in one place. Check it out here
cancel
Showing results for 
Search instead for 
Did you mean: 
simonegabrielli
Contributor III
Contributor III

Call R library(Benchamrking) from Qlik

Hello everyone, 

I tried to run this in Qlik Sense Desktop, using the R library called Benchmarking:

SSELoad2:
Load
INPUT1,
INPUT2,
OUTPUT1,
OUTPUT2,
OUTPUT3,
OUTPUT4,


R.ScriptEval('library (Bernchmarking); dea(q$INPUT1, q$INPUT2) ;', INPUT1, INPUT2) as DEA

Resident SSELoad1;

But the SSEtoRserve return this error:

SSEtoRserve.RServeEvaluator|Rserve error: Error in library(Bernchmarking) :
there is no package called 'Bernchmarking'

Can i call this R package from Qlik Sense Desktop, with different methods ?

Labels (1)
4 Replies
ErikWetterberg
Master
Master

A typo? Or is it really called 'Bernchmarking'??

simonegabrielli
Contributor III
Contributor III
Author

Hi Erik, yes it is called Benchmarking

this is the link for the package: https://cran.r-project.org/web/packages/Benchmarking/index.html

ErikWetterberg
Master
Master

But the error message says:

SSEtoRserve.RServeEvaluator|Rserve error: Error in library(Bernchmarking) :
there is no package called 'Bernchmarking'

Bernchmarking - is it simply a typo in your code??

simonegabrielli
Contributor III
Contributor III
Author

Yes, you are right is it a typo. I correct the script in the Load Script Editor  like this:

DEALOAD:
LOAD


DMU,
INPUT1,
INPUT2,
OUTPUT1,
OUTPUT2,
OUTPUT3,
OUTPUT4

FROM [lib://dati/deaDB.xlsx]
(ooxml, embedded labels, table is Sheet1);

 

SSELoad:
Load
INPUT1,
INPUT2,
OUTPUT1,
OUTPUT2,
OUTPUT3,
OUTPUT4,

R.ScriptEval('cbind(q$INPUT1, q$INPUT2);', INPUT1, INPUT2) as X,

R.ScriptEval('cbind(q$OUTPUT1, q$OUTPUT2, q$OUTPUT3, q$OUTPUT4);', OUTPUT1, OUTPUT2, OUTPUT3, OUTPUT4) as Y

Resident DEALOAD;


SSEload2:

LOAD
X,
Y,


R.ScriptEval('library(Benchmarking); dea(q$X, q$Y);', X, Y) as DEA

Resident SSELoad;

 

But the SSEtoRserve returns this error:

 

SSEtoRserve.RServeEvaluator|Evaluating library(Benchmarking); dea(q$X, q$Y);
INFO|SSEtoRserve.RServeEvaluator|Param names: X Y
WARN|SSEtoRserve.RServeEvaluator|Rserve error: Error in dea(q$INPUT1) : argument "Y" is missing, with no default

WARN|SSEtoRserve.RServeEvaluator|Rserve Traceback: dea(q$INPUT1)

Do you have any idea ? thanks for your help !