Jestem nowicjuszem w R, a więc to, co wydawało się działać dobrze w C i Pythonie, zaskakująco zepsuje się w R. Próbuję obliczyć produkt pierwszych 1000 numerów Fibonacciego. Oto pełny kod:Prosta pętla w R, która "zamiennik ma długość zero" w R
#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
ta zwraca następujący błąd:
Error in Fibonacci[i] <- (Fibonacci[X - 1]) + (Fibonacci[X - 2]) :
replacement has length zero
jestem skłonny myśleć, że nie zrozumiałeś pracy z różnych elementów tablicy (chyba I-2 w wektorze opis jest niepoprawny), ale nie znalazłem nic w ciągu ostatniej półtorej godziny, która pomogłaby mi to poprawić. Tak więc wszelkie spostrzeżenia na temat przyczyny problemu będą najbardziej doceniane.
Z góry dziękuję.
Prosta technika debugowanie jest wstawienie 'print (i)' na początku pętli. Powiedziałoby ci, gdzie wystąpił błąd, abyś mógł zrozumieć, na czym polega problem. –
Miałem podobny problem, wziąłem twoją radę, to nie działa, ponieważ otrzymujemy błąd, więc nie ma druku(). – Benzle