Передача seq <float option> из F # в RProvider

Я хочу быть в состоянии передать последовательностьoption float RProvider вF#, Если у меня есть последовательность поплавков сSome float а такжеNoneкак я могу получитьNone значения вR сRProvider? Я бы ожидалNones будет эквивалентноNA значение вR, но я не могу пройтиseq<option float> к Р.

Например, с

open System
open RDotNet
open RProvider
open RProvider.graphics
open RProvider.stats  

let optData4 = 
    seq [Some 10.0; Some 9.0; Some 8.0; None; Some 6.0; 
        Some 5.0; Some 5.0; None; Some 4.0; Some 2.0; 
        None]

let testData4 = 
    namedParams [
        "regPrice", optData4;]
    |> R.data_frame

Я получаю многострочную ошибку:

System.Exception: No converter registered for type Microsoft.FSharp.Collections.FSharpList`1[[Microsoft.FSharp.Core.FSharpOption`1[[System.Double, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089]], FSharp.Core, Version=4.4.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a]] or any of its base types
>    at [email protected](String message) in C:\Tomas\Public\bmc\FSharp.RProvider\src\RProvider\RInterop.fs:line 164
   at RProvider.RInteropInternal.REngine.SetValue(REngine this, Object value, FSharpOption`1 symbolName) in C:\Tomas\Public\bmc\FSharp.RProvider\src\RProvider\RInterop.fs:line 274
   at RProvider.RInteropInternal.toR(Object value) in C:\Tomas\Public\bmc\FSharp.RProvider\src\RProvider\RInterop.fs:line 287
   at RProvider.RInterop.passArg@447(List`1 tempSymbols, Object arg) in C:\Tomas\Public\bmc\FSharp.RProvider\src\RProvider\RInterop.fs:line 461
   at [email protected](IEnumerable`1& next) in C:\Tomas\Public\bmc\FSharp.RProvider\src\RProvider\RInterop.fs:line 469
   at Microsoft.FSharp.Core.CompilerServices.GeneratedSequenceBase`1.MoveNextImpl()
   at Microsoft.FSharp.Core.CompilerServices.GeneratedSequenceBase`1.System-Collections-IEnumerator-MoveNext()
   at System.Collections.Generic.List`1..ctor(IEnumerable`1 collection)
   at Microsoft.FSharp.Collections.SeqModule.ToArray[T](IEnumerable`1 source)
   at RProvider.RInterop.callFunc(String packageName, String funcName, IEnumerable`1 argsByName, Object[] varArgs) in C:\Tomas\Public\bmc\FSharp.RProvider\src\RProvider\RInterop.fs:line 466
   at <StartupCode$FSI_0012>.$FSI_0012.main@() in C:\Users\sranney\repositories\carolina_refit_bits\refit_bits\refit_bits\RDemo.fs:line 102
Stopped due to error

Единственный способ передать что-либоRProvider если я преобразуюseq<option float> кseq<float> с

let optData4 = 
    seq [Some 10.0; Some 9.0; Some 8.0; None; Some 6.0; 
        Some 5.0; Some 5.0; None; Some 4.0; Some 2.0; 
        None]
    |> Seq.choose id

let testData4 = 
    namedParams [
        "regPrice", optData4;]
    |> R.data_frame

но это сводит на нет цель выбора варианта None (который, я бы подумал, был бы сопоставим сRs NA значение.

Как я могу передать последовательность значений вRProvider где некоторые значенияNone вF# и должно бытьNA вR?

Ответы на вопрос(2)

Ваш ответ на вопрос