filter - 如何使用 do 和 "by"以及 "groupby"重写此已弃用的表达式 (Julia)

标签 filter dataset julia grouping partitioning

目标是生成虚假数据。

我们生成一组参数,

## Simulated data
df_3 = DataFrame(y = [0,1], size = [250,250], x1 =[2.,0.], x2 =[-1.,-2.])

现在,我想生成假数据本身,

df_knn =by(df_3, :y) do df
  DataFrame(x_1 = rand(Normal(df[1,:x1],1), df[1,:size]),
  x_2 = rand(Normal(df[1,:x2],1), df[1,:size]))
end

如何在此处将 by 替换为 groupby

来源:此摘录自《Data Science with Julia》(2019 年)一书。

最佳答案

我想这就是你的意思:

julia> combine(groupby(df_3, :y)) do df
         DataFrame(x_1 = rand(Normal(df[1,:x1],1), df[1,:size]), 
                   x_2 = rand(Normal(df[1,:x2],1), df[1,:size]))
       end
500×3 DataFrame
 Row │ y      x_1        x_2
     │ Int64  Float64    Float64
─────┼─────────────────────────────
   1 │     0   1.88483    0.890807
   2 │     0   2.50124   -0.280708
   3 │     0   1.1857     0.823002
  ⋮  │   ⋮        ⋮          ⋮
 498 │     1  -0.611168  -0.856527
 499 │     1   0.491412  -3.09562
 500 │     1   0.242016  -1.42652
                   494 rows omitted

关于filter - 如何使用 do 和 "by"以及 "groupby"重写此已弃用的表达式 (Julia),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/69790147/

相关文章:

Java Filter 与错误调度程序解释

javascript - 我的带有 "all"运算符的 Mapbox 表达式有什么问题?

julia - 如何使用 Plots.jl 填充曲线之间的区域?

julia - julia 轮函数是否包含大数错误?

types - Julia:抽象和具体类型整数与 Int8 与 Int64

c# - 过滤列表对象的通用方法

Java - 为过滤功能创建循环

azure - 如何在 azure ml 设计器中使用 azure ml 注册表中的数据 Assets ?

r - 使两个随机团队形成数据集并在 R 中获得团队总分

python - 循环 scikit-learn 机器学习数据集