Einfache for-Schleife in R die Herstellung von "Ersatz-hat Länge null" in R

Ich bin ein Neuling in R, und also, was schien zu funktionieren in C und Python, überraschend bricht in R.
Ich versuche berechnet das Produkt der ersten 1000 Fibonacci-zahlen. Hier ist der vollständige code:

#PRRODUCT OF FIBONACCI NUMBERS
Fibonacci<-rep(0, 1000)
Fibonacci[0]<-1
Fibonacci[1]<-1
Product<-1

for (i in 2:1000)
{
    Fibonacci[i]<-(Fibonacci[i-1])+(Fibonacci[i-2])
    Product<-Fibonacci[i]*Product
}

Fibonacci[1000]
Product

Dieser gibt die folgende Fehlermeldung zurück:

Error in Fibonacci[i] <- (Fibonacci[X - 1]) + (Fibonacci[X - 2]) : 
  replacement has length zero

Ich bin geneigt zu denken, dass ich missverstanden Betrieb mit unterschiedlichen Elementen ein array (vielleicht ist die ich-2 in die Vektor-Beschreibung ist nicht korrekt), aber ich habe nicht gefunden, etwas über die vergangene Stunde und eine Hälfte, die hätte mir geholfen, ihn zu korrigieren.
So, keine Einblicke in die Ursachen des Problems wäre sehr geschätzt.

Vielen Dank im Voraus.

Eine einfache debugging-Technik ist das einfügen print(i) am Anfang der Schleife. Das hätte Ihnen gesagt, wo der Fehler aufgetreten ist, so dass Sie herausfinden konnte, was das problem ist.
Ich hatte ein ähnliches problem, nahm Ihren Rat an, es funktioniert nicht, weil wir sind immer die Fehler, also keine print() passiert.

InformationsquelleAutor user2585222 | 2013-07-15

Schreibe einen Kommentar