Выполнить код R в ошибке U-SQL озера данных Azure - PullRequest
0 голосов
/ 25 января 2019

У меня есть код Run Script R, который должен быть запущен в озере данных Azure. После того как я установил расширение R в озере данных Azure, я попытался использовать для этого u-SQL. Но когда я запустил свой скрипт U-SQL, я столкнулся с ниже ошибка. Любое тело может помочь решить нижеуказанную проблему. Я застрял около месяца.

REFERENCE ASSEMBLY [ExtR];   //enable R extensions for the U-SQL Script

//declare the R script as a string variable and pass it as a parameter to the Reducer:
DECLARE @myRScript = @"
temp = inputFromUSQL
temp$mynewcol = ncol(temp)  
outputToUSQL = temp
";


DECLARE @myInputFile string  = @"/dev/iris.csv";
DECLARE @myOutputFile string = @"/dev/outex1.txt";

@InputIrisData = EXTRACT 
sepal_length string,
sepal_width string,
petal_length string,
petal_width string,
species string  
FROM @myInputFile
USING Extractors.Csv(skipFirstNRows: 1);


@ExtendedData = SELECT 
0 AS Par,    // pseudo partition
*
FROM @InputIrisData;

//Column names and types must be same in usql and r scripts
@RScriptOutput = REDUCE @ExtendedData ON Par PRODUCE 
Par, 
RowId int,
ROutput string
USING new Extension.R.Reducer(command:@myRScript, rReturnType:"charactermatrix");

//OUTPUT @RScriptOutput TO @myOutputFile USING Outputters.Tsv();    
OUTPUT @RScriptOutput TO @myOutputFile USING Outputters.Csv(outputHeader : true, quoting:false);  //if want the headers as well

Ошибка:

==== Пойманное исключение RDotNet.EvaluationException

в RDotNet.REngine.Parse (оператор String, StringBuilder incompleteStatement) в RDotNet.REngine.d__0.MoveNext () в System.Linq.Enumerable.LastOrDefault [TSource] (источник IEnumerable`1) в RDotNet.REngine.Evaluate (оператор String) at Extension.R.RDriver.RunRCode (REngine rEngine, String rText, RTextTypes rTextType, логическое значение isReturnTypeDataFrame) в C: \ agent_1 \ USqlExtensions \ lang \ R \ ExtR \ RDriver.cs: строка 125 в Extension.R.RDriver.PrepareEnvironmentRunRCode () в C: \ agent_1 \ USqlExtensions \ lang \ R \ ExtR \ RDriver.cs: строка 148 в Extension.R.UsqlHelperFunctions.d__2.MoveNext () i n C: \ agent_1 \ USqlExtensions \ lang \ R \ ExtR \ UsqlHelperFunctions.cs: строка 73 в ScopeEngine.RunUdoCodeExceptionhandled> (ScopeTypedManagedHandle * className, SByte * methodName, * код) в d: \ data \ yarnnm \ local \ usercache \ 34c0a3b0-a710-4367-b2b7-3bb36d9fa3ba \ appcache \ application_1546151044065_290541 \ container_e290_1546151044065_290541_01_000001 \ wd \ 200 * h.

...