gpt4 book ai didi

dataframe - Julia DataFrame 中的多个条件

转载 作者:行者123 更新时间:2023-12-05 01:50:29 33 4
gpt4 key购买 nike

我有一个包含 3 列的 DataFrame,名为 :x :y 和 :z,它们是 Float64 类型。 :x 和 "y 在 (0,1) 上是 iid uniform 并且 z 是 x 和 y 的总和。
我想要一个简单的任务。如果 x 和 y 都大于 0.5,我想打印 z 并将其值替换为 1.0。由于某种原因,以下代码正在运行但无法正常工作

if df.x .> 0.5 && df.y .> 0.5
println(df.z)
replace!(df, :z) .= 1.0
end

对此有任何帮助将不胜感激

最佳答案

以下 ifelse 比 500k 行数据帧的循环快 60 倍。

using DataFrames
x = rand(500_000)
y = rand(500_000)
z = x + y
df = DataFrame(x = x, y = y, z = z)

df.z .= ifelse.((df.x .> 0.5) .&& (df.y .> 0.5), 1.0, df.z)

关于dataframe - Julia DataFrame 中的多个条件,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/73061202/

33 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com