Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/fsharp/3.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
F# 在F中处理要保存为.csv的选项值#_F# - Fatal编程技术网

F# 在F中处理要保存为.csv的选项值#

F# 在F中处理要保存为.csv的选项值#,f#,F#,我正在使用Fsharp进行数据挖掘。为了确保在数据挖掘过程中不会出现空值,我需要确保空值不会通过我正在解析的内容,因此我使用了double选项。数据的屏蔽版本如下所示 type structure = { time: double option pressure: double option force: double option } let rawData = [| {| time = Some(15); pressure = Some(50); force =

我正在使用Fsharp进行数据挖掘。为了确保在数据挖掘过程中不会出现空值,我需要确保空值不会通过我正在解析的内容,因此我使用了double选项。数据的屏蔽版本如下所示

type structure = {
    time: double option
    pressure: double option
    force: double option }
let rawData =
  [|  {| time = Some(15); pressure = Some(50); force = Some(100)|}
      {| time = Some(16); pressure = Some(55); force = Some(110)|}
      {| time = Some(17); pressure = None);    force = Some(110)|}
      {| time = Some(16); pressure = Some(65); force = None|}
      {| time = Some(18); pressure = Some(70); force = Some(120)|} |]
我目前正在将其保存到Deedle数据框并保存到.csv。但是,当我这样做时,这些值与“Some()”关联。对于“无”值,它们也有空白值

我怎样才能去掉数字周围的“Some()”并将None值改为“NaN”,然后将其保存为.csv

我如何才能去掉数字周围的“Some()”并将None值改为“NaN”

创建一个带有签名的函数
double option->string
。您可以使用
匹配
表达式处理选项

让DoubleOptionStringFlatten=
功能
|一些(d:double)->d.ToString()
|无->“南”

然后将其保存到.csv

让csvLineFromStructure(s:structure)=
[s.时间;s.压力;s.力量]
|>Array.map doubleOptionStringFlatten
|>String.concat“,”
//然后为每个结构创建一行:
让csvFromStructures(结构:结构[])=
structures |>Array.map csvLineFromStructure |>String.concat Environment.NewLine