使用 Julia DataFrame 操作

Operation with Julia DataFrame

我有一个数据框:

signal   value
weak     100
strong   20
neutral  300

我该如何计算:

(weak(100) - strong(20)) / weak+strong+neutral

结果应该是:0.19

我不确定您希望如何编写,但假设您的数据框名称是 df,您可以执行以下操作之一:

julia> using DataFrames

julia> df = DataFrame(signal=["weak", "strong", "neutral"], value=[100, 20, 300])
3×2 DataFrame
 Row │ signal   value
     │ String   Int64
─────┼────────────────
   1 │ weak       100
   2 │ strong      20
   3 │ neutral    300

julia> weak, strong, neutral = df.value
3-element Vector{Int64}:
 100
  20
 300

julia> (weak - strong) / (weak + strong + neutral)
0.19047619047619047

julia> d = Dict(df.signal .=> df.value)
Dict{String, Int64} with 3 entries:
  "strong"  => 20
  "neutral" => 300
  "weak"    => 100

julia> (d["weak"] - d["strong"]) / (d["weak"] + d["strong"] + d["neutral"])
0.19047619047619047