gpt4 book ai didi

r - 在字符串条件下子集 df

转载 作者:行者123 更新时间:2023-12-04 11:41:03 29 4
gpt4 key购买 nike

我想子集 df在未知条件下(例如,随机定义如下例所示):

df <- data.frame(a=1:10, b = 10:1)
condition <- paste0(sample(letters[1:2],1), sample(c("<",">"),1), sample(1:10,1))

我可以用 eval 做到这一点,其中,vox populi,是次优的:
subset(df, eval(parse(text=condition)))

是否有替代 eval(parse) 的替代方案? ?

最佳答案

稍微调整一下你的脚本 if 变得更可行:

condition  <- list(value1 = sample(letters[1:2], 1),
comp = sample(c(`<`, `>`), 1)[[1]],
value2 = sample(1:10, 1))

subset(df, condition$comp(df[, condition$value1], condition$value2))

所以这取决于你的条件如何通过的约束。

(请注意,使用 subset 可能是个坏主意)

关于r - 在字符串条件下子集 df,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/44901196/

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