gpt4 book ai didi

r - 如何通过变量将列名传递给 data.table 中的函数?

转载 作者:行者123 更新时间:2023-12-02 04:37:11 24 4
gpt4 key购买 nike

我想将函数应用于名称在变量中的某个列。我可以使用 eval() 选择它,但不能将它传递给函数。

library(data.table)
dt <- data.table(col1 = 1:10)
mnem <- colnames(dt)[1]

# This works fine
dt[, eval(mnem)]

# None of these works
dt[, sum(mnem)]
dt[, sum(mnem), with = FALSE]

dt[, sum(eval(mnem))]
dt[, sum(eval(mnem)), with = FALSE]

最佳答案

人们已经说出了正确的答案,或者你可以这样做:

dt[, sum(eval(parse(text = mnem)))]

关于r - 如何通过变量将列名传递给 data.table 中的函数?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/41252807/

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