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

eval(expr、envir、enclos)中出错:找不到对象“AR”[已关闭]

  •  -1
  • zzbb2266  · 技术社区  · 9 年前

    很抱歉,关于这个愚蠢的问题,伙计们……但似乎我真的需要在新项目的这一部分得到一些帮助:

    k1 = 1e-6
    k2 = 2e-7
    k3 = 1e-10
    k4 = 1e-12
    k5 = 1e-12
    k6 = 3e-14
    k7 = 4e-12
    k8 = 5e-15
    k9 = 6e-12
    k10 = 7e-13
    k11 = 1e-11
    k12 = 1e-12
    data2 <- read.csv
    t = data2$XA*10000
    B = 1E-6
    A = B*t^(3/2)
    R0 = 1e-5
    e = exp(1)
    AR1 = (k1*R0*e^-((k1+k2)*t)+k2*R0)/(k1+k2)
    ARI = (k3*AR*e^-((k3+k4)*t+k4*AR))/(k3+k4)
    RI = (k5*ARI*e^-((k5+k6)*t+k6*ARI))/(k5+k6)
    R = (k7*RI*e^-((k7+k8)*t+k8*RI))/(k7+k8)
    AR2 = (k9*R*e^-((k9+k10)*t+k10*R))/(k9+k10)
    AR = AR1 + AR2
    Effect = (k11*AR*e^-((k11+k12)*t+k12*ARI))/(k11+k12)
    plot(t, Effect)
    

    结果是:

    Error in eval(expr, envir, enclos) : object 'AR' not found
    

    实际上它是多相化学反应链模拟的一部分。这就是缺少if…else语句的问题吗?对不起,我现在在R完全是新手。谢谢

    以下是供参考的数据集

    XA
    0
    1.00E-10
    5.00E-09
    9.90E-09
    1.48E-08
    1.97E-08
    2.46E-08
    2.95E-08
    3.44E-08
    3.93E-08
    9.00E-04
    1.00E-03
    2.00E-03
    3.00E-03
    4.00E-03
    5.00E-03
    6.00E-03
    7.00E-03
    8.00E-03
    9.00E-03
    1.00E-02
    
    1 回复  |  直到 9 年前
        1
  •  0
  •   Hack-R    9 年前

    行的排序不可能不是循环逻辑。

    R 定义为 AR2 但对 R 取决于 RI 这取决于 ARI 因此 AR 因此 AR2型 所以它是圆形的。

    让我们假设其中一个是错误的。由于没有足够的信息让我知道我会认为哪一个是错误的 RI公司 不应在定义中 R .

    通过修复循环逻辑,我们现在有了工作代码:

    k1 = 1e-6
    k2 = 2e-7
    k3 = 1e-10
    k4 = 1e-12
    k5 = 1e-12
    k6 = 3e-14
    k7 = 4e-12
    k8 = 5e-15
    k9 = 6e-12
    k10 = 7e-13
    k11 = 1e-11
    k12 = 1e-12
    data("mtcars")
    data2 <- mtcars
    t      = data2$mpg*10000
    B      = 1E-6
    A      = B*t^(3/2)
    R0     = 1e-5
    e      = exp(1)
    R      = (k7*e^-((k7+k8)*t+k8))/(k7+k8) #*RI
    AR1    = (k1*R0*e^-((k1+k2)*t)+k2*R0)/(k1+k2)
    AR2    = (k9*R*e^-((k9+k10)*t+k10*R))/(k9+k10)
    AR     = AR1 + AR2
    ARI    = (k3*AR*e^-((k3+k4)*t+k4*AR))/(k3+k4)
    RI     = (k5*ARI*e^-((k5+k6)*t+k6*ARI))/(k5+k6)
    Effect = (k11*AR*e^-((k11+k12)*t+k12*ARI))/(k11+k12)
    plot(t, Effect)
    

    enter image description here

    使现代化

    我在你添加的地方看到了你的编辑 data2

    XA
    0
    1.00E-10
    5.00E-09
    9.90E-09
    1.48E-08
    1.97E-08
    2.46E-08
    2.95E-08
    3.44E-08
    3.93E-08
    9.00E-04
    1.00E-03
    2.00E-03
    3.00E-03
    4.00E-03
    5.00E-03
    6.00E-03
    7.00E-03
    8.00E-03
    9.00E-03
    1.00E-02
    
    data2 <- read.table(con<-file("clipboard"),header=T)
    
    
    k1 = 1e-6
    k2 = 2e-7
    k3 = 1e-10
    k4 = 1e-12
    k5 = 1e-12
    k6 = 3e-14
    k7 = 4e-12
    k8 = 5e-15
    k9 = 6e-12
    k10 = 7e-13
    k11 = 1e-11
    k12 = 1e-12
    t      = data2$XA*10000
    B      = 1E-6
    A      = B*t^(3/2)
    R0     = 1e-5
    e      = exp(1)
    R      = (k7*e^-((k7+k8)*t+k8))/(k7+k8) #*RI
    AR1    = (k1*R0*e^-((k1+k2)*t)+k2*R0)/(k1+k2)
    AR2    = (k9*R*e^-((k9+k10)*t+k10*R))/(k9+k10)
    AR     = AR1 + AR2
    ARI    = (k3*AR*e^-((k3+k4)*t+k4*AR))/(k3+k4)
    RI     = (k5*ARI*e^-((k5+k6)*t+k6*ARI))/(k5+k6)
    Effect = (k11*AR*e^-((k11+k12)*t+k12*ARI))/(k11+k12)
    plot(t, Effect)
    

    enter image description here