2013-05-03 23 views
16

Ich versuche, den folgenden Code in R auszuführen, aber ich erhalte einen Fehler.Fehler: Versuch, Nicht-Funktion anzuwenden

Ich bin mir nicht sicher, welcher Teil der Formel falsch ist. Jede Hilfe würde sehr geschätzt werden.

> 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 
+0

Können Sie irgendwelche zusätzlichen Informationen geben? Diese Frage ist derzeit nicht zu beantworten, zumindest nicht in der von Ihnen verwendeten Sprache. – colincameron

+0

Entschuldigung, ich benutze 'r' - komplett vermisst, dass in meinem ersten Beitrag. –

+1

Warum wird diese Frage immer noch als keine echte Frage markiert? Kann jemand die enge Abstimmung aufheben, da es mir scheint, dass dies eine echte Frage ist und nicht geschlossen werden sollte? –

Antwort

31

Sie verpassen * s in den letzten beiden Begriffe des Ausdrucks, so R (z) 0.207 (log(DIAM93))^2 als Versuch interpretiert, eine Funktion namens 0.207 zu nennen ...

Zum Beispiel:

> 1 + 2*(3) 
[1] 7 
> 1 + 2 (3) 
Error: attempt to apply non-function 

Ihre (unreproducible) Ausdruck sollte lauten:

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

Mathematica ist das einzige Computersystem, das ich kenne, das Nebeneinanderstellung für die Multiplikation erlaubt ...

+0

Hatte das gleiche Problem, soooo dumm dank Ben Bolker: D –

Verwandte Themen