2017-10-21 1 views
-1

Ich versuche, eine Sequenz mit diesen Bedingungen zu machen:Versuch nicht-Funktion in einer Sequenz anwenden

y<-seq(from=a-2(b-a), to=a+2(b-a), by=4(b-a)/99, length.out=100) 

Gegeben:

sample=rnorm(50, mean=0, sd=1) 
sample_min=min(sample) 
a<-sample_min 
sample_max=max(sample) 
b<-sample_max 

Und ich bekomme den Fehler „Versuch nicht anzuwenden -Funktion in einer Sequenz. " Wie behebe ich das?

Antwort

2

Werfen Sie einen Blick auf 2(b-a) in der Konsole:

2(b-a) 
# Error: attempt to apply non-function 

R Sie nicht kennt Multiplikation wollen, so ist es denkt 2(b-a) ist eine Funktion 2() mit dem Argument b-a. Sie müssen die Multiplikation mit dem arithmetischen Operator * angeben. So sollte a-2(b-a)a-2*(b-a) sein, und das gleiche für die to und by Argumente.

Nachdem Sie das getan haben, müssen Sie eines der Argumente to oder length.out entfernen, da dies auch einen Fehler verursacht. to und length.out können nicht zusammen verwendet werden. Das Endprodukt wird

sein
seq(from = a - 2 * (b - a), to = a + 2 * (b - a), by = 4 * (b - a)/99) 
## or 
seq(from = a - 2 * (b - a), by = 4 * (b - a)/99, length.out = 100) 

Siehe help(seq) für mehr.

Verwandte Themen