如何用R中的变量计算表达式?

 虎爷在江湖 发布于 2023-02-10 14:34

我希望这段代码设置plt为10:

> var = "plt"
> eval(paste0(var, "<-", 10))
[1] "plt<-10"

但相反,它返回一个字符串.

我试过eval(as.expression(paste0(var, "<-", 10)))和其他选项,但它仍然没有给出预期的结果.

代码有什么问题?

1 个回答
  • 如果我理解你的评论,没有理由潜入鲨鱼出没的水域eval(parse()).尝试这样的事情:

    myfun <- function(x, fun) {
      if (is.character(fun)) fun <- match.fun(fun)
      fun(x)
    }
    
    myfun(1:5, mean)
    #[1] 3
    myfun(1:5, "mean")
    #[1] 3
    

    2023-02-10 14:37 回答
撰写答案
今天,你开发时遇到什么问题呢?
立即提问
热门标签
PHP1.CN | 中国最专业的PHP中文社区 | PNG素材下载 | DevBox开发工具箱 | json解析格式化 |PHP资讯 | PHP教程 | 数据库技术 | 服务器技术 | 前端开发技术 | PHP框架 | 开发工具 | 在线工具
Copyright © 1998 - 2020 PHP1.CN. All Rights Reserved 京公网安备 11010802041100号 | 京ICP备19059560号-4 | PHP1.CN 第一PHP社区 版权所有