35

我正在尝试在 R 中运行以下代码,但出现错误。

我不确定公式的哪一部分不正确。任何帮助将不胜感激。

> censusdata_20$AGB93 = WD * exp(-1.239 + 1.980 * log (DIAM93) + 0.207 (log(DIAM93))^2 
                        - 0.0281 (log(DIAM93))^3)
Error: attempt to apply non-function
4

2 回答 2

46

您在*表达式的最后两个术语中缺少 s ,因此 R 将(例如)解释0.207 (log(DIAM93))^2为尝试调用名为0.207...

例如:

> 1 + 2*(3)
[1] 7
> 1 + 2 (3)

错误:尝试应用非函数

您的(不可重现的)表达式应为:

censusdata_20$AGB93 = WD * exp(-1.239 + 1.980 * log (DIAM93) + 
                              0.207* (log(DIAM93))^2  -
                              0.0281*(log(DIAM93))^3)

Mathematica 是我所知道的唯一一个允许并列用于乘法运算的计算机系统......

于 2013-05-03T18:44:07.397 回答
0

由于笨拙的错字,我得到了错误:

这个错误:

knitr::opts_chunk$seet(echo = FALSE)

错误:尝试应用非函数

更正错字后,它的工作原理:

knitr::opts_chunk$set(echo = FALSE)
于 2020-06-23T13:07:00.347 回答