Как мне написать формулу с большим количеством факторов уровня и ошибок (мне удалось сделать anova без дополнительного фактора уровня)?
В R я бы написал что-то вроде этого
factor=as.factor(table$luck)
anova=aov(MeanRT ~ factor + Error(Person) , data=table)
В F # у меня есть это пока:
let factor = R.as_factor(table.["Luck"]).AsFactor()
let df=
(namedParams [
"Luck", box (luck|> List.map (fun (a,b,c) -> a));
"Person", box (luck |> List.map (fun (a,b,c) -> b));
"MeanRT", box (luck |> List.map (fun (a,b,c) -> c));
"glFactor", box glFactor;
]
|> R.data_frame).AsDataFrame()
let anovaLuck = R.lm(formula = "MeanRT~factor + Error(Person)", data= df, paramArray = [|glFactor|] )
Даже без части перед 'Error' я не получаю ту же Anova-Table, что и в R.
С ошибкой (человек) я получаю следующее исключение
RDotNet.EvaluationException: Error in Error(Person) : could not find function "Error"
at RDotNet.REngine.Parse(String statement, StringBuilder incompleteStatement)
at RDotNet.REngine.<Defer>d__46.MoveNext()
at System.Linq.Enumerable.LastOrDefault[TSource](IEnumerable`1 source)
at RDotNet.REngine.Evaluate(String statement)
at RProvider.Internal.Logging.logWithOutput[a](CharacterDeviceInterceptor characterDevice, FSharpFunc`2 f) in C:\FSharp\RProvider\src\RProvider\Logging.fs:line 65
at <StartupCode$FSI_0069>.$FSI_0069.main@() in C:\...\Program.fsx:line 614