从 csv 文件导入数字时,我需要将它们转换为带有单位的浮点数。
目前我使用内联函数执行此操作:
data |> List.map float |> List.map (fun n -> n * 1.0<m>)
但我想知道是否有更优雅的方法来做到这一点 - 还是我必须创建自己的带有转换功能的“单位”模块?
像这样真的很好,但我怀疑这可能......
data |> List.map float |> List.map lift<m>
这与我之前的问题(如何普遍删除 F# 度量单位)相反。
更新:对于自制装置,我试过这个,效果很好:
[<Measure>]
type km =
static member lift (v:float) = v * 1.0<km>
data |> List.map float |> List.map km.lift
或者,按照这个答案中的问题
data |> List.map (float >> km.lift)