代码之家  ›  专栏  ›  技术社区  ›  Geraldine

R: 将写为字符串的方程用作实际方程

  •  1
  • Geraldine  · 技术社区  · 7 年前

    有人知道用字符串形式给出的方程作为R中的实际方程或公式的方法吗?

    X   Z   Equation                                    Genus       Species
    DBH NA  0.1731*X^(2.0296)                           All         All
    DBH NA  0.1027*X^(2.4798)                           All         All
    DBH H   (-4.58643+1.90532*log10(X)+1.0646*log10(Z)) Tectona     grandis
    DBH H   (-4.58643+1.90532*log10(X)+1.0646*log10(Z)) Tectona     grandis
    DBH NA  0.000189*X^(2.262)                          Dalbergia   melanoxylon
    DBH H   0.0763*X^(2.2046)*Z^(0.4918)                All         All
    

    假设我在观察到的数据中有柚木,我想能够提取 -4.58643+1.90532*log10(X)+1.0646*log10(Z) X Z (高度)。

    我需要某种“通用”解,因为我要处理很多物种和很多不同的方程。我知道如何选择实际方程,但我把它作为一个因素——我该如何操作它?我可以吗?

    1 回复  |  直到 7 年前
        1
  •  2
  •   d.b    7 年前

    您可以使用 eval parse

    #Your equation
    x = "-4.58643+1.90532*log10(X)+1.0646*log10(Z)"
    
    #Values you want to plug into x
    X = 2
    Z = 5
    
    #Evaluate x
    eval(parse(text = x))
    #[1] -3.268748