Dataframe 如何在Julia中将向量{Decimal}转换为Float64?

Dataframe 如何在Julia中将向量{Decimal}转换为Float64?,dataframe,julia,Dataframe,Julia,我刚开始Julia,做一些列操作。然而,我发现自己进入了一个名为Vector{Decimal}的列类型。我想把它转换成更普通的东西,比如Float64 我试图使用转换(Float64,df.difference),但出现以下错误: ERROR: MethodError: Cannot `convert` an object of type Vector{Decimals.Decimal} to an object of type Float64 处理此类列的最佳方法是什么?这是我的数据框: j

我刚开始Julia,做一些列操作。然而,我发现自己进入了一个名为
Vector{Decimal}
的列类型。我想把它转换成更普通的东西,比如Float64

我试图使用
转换(Float64,df.difference)
,但出现以下错误:

ERROR: MethodError: Cannot `convert` an object of type Vector{Decimals.Decimal} to an object of type Float64
处理此类列的最佳方法是什么?这是我的数据框:

julia> df1[1:5, :]
5×3 DataFrame
 Row │ base_msrp  sales_amount  difference
     │ Decimal…?  Float64?      Decimal…
─────┼─────────────────────────────────────
   1 │    599.99       479.992     119.998
   2 │    599.99       599.99       -0.00
   3 │    599.99       479.992     119.998
   4 │    599.99       539.991      59.999
   5 │    599.99       539.991      59.999
只要做:

Float64.(df.difference)
例如:

julia> using Decimals

julia> vals = Decimal.(rand(3))
3-element Vector{Decimal}:
 Decimal(0, 8265655272182808, -16)
 Decimal(0, 8864515364687842, -16)
 Decimal(0, 7020504368500311, -16)

julia> Float64.(vals)
3-element Vector{Float64}:
 0.8265655272182808
 0.8864515364687842
 0.7020504368500311

太好了!非常感谢你!