The idea of using: cat("i =",i,"\n")
is to display the value of i each time the loop executes. Displaying i _before_ the error occurs tells us what value of i is causing the problem. Because the error is occurring when you try to index ts, perhaps adding: cat(dim(ts),"\n") for(i in 1:N) { ... _before_ the loop starts will tell you what the dimensions of ts are. It way well be a list that you have to use a different syntax for indexing. An even more complete description of ts can be had like this: str(ts) Unfortunately I am about to log out and get some sleep so I will not be able to continue answering until some time tomorrow. Jim On Sat, Oct 6, 2018 at 7:32 PM Subhamitra Patra <subhamitra.pa...@gmail.com> wrote: > > I am extremely sorry to say that both the suggestions did not work. > > I did not understand the suggestion of Prof. Lemon. So, Sir, Can you please > clarify me your suggestion? > > I tried the suggestion of Ruipbarradas. It does not work. > > > Please help me out for which I shall be always grateful to you. > > Thanks in advance. > > On Sat, Oct 6, 2018 at 2:48 PM ruipbarradas <ruipbarra...@sapo.pt> wrote: >> >> Hello, >> >> Instead of nrow try all uppercase: >> >> N <- NROW (ts) >> >> >> Hope this helps, >> >> Rui Barradas >> >> >> >> >> Enviado a partir do meu smartphone Samsung Galaxy. >> -------- Mensagem original -------- >> De: Subhamitra Patra <subhamitra.pa...@gmail.com> >> Data: 06/10/2018 10:14 (GMT+00:00) >> Para: drjimle...@gmail.com >> Cc: r-help@r-project.org >> Assunto: Re: [R] Requesting for help on the problem of "subscript out of >> bounds" >> >> Hello Sir, >> >> I tried by defining mat, but still facing the same problem. >> >> Hence, mat represents the time series. This time, I defined it as ts and >> tried, but still having the same problem. >> >> In particular, the problem is coming in the following line >> *for (i in 1:N){* >> *+ r[i]<-approx_entropy(ts[i,], edim = 2, r = 0.2*sd(ts[i,]), elag = >> 1) * >> >> where i is unable to synchronize with the no. of rows i.e. rows and thus I >> am getting the error of >> >> *Error in `[<-`(`*tmp*`, i, , value = ts[i:(N - m + i)]) : subscript out >> of bounds* >> >> For your reference, I am providing my full code with an explanation as >> follows. >> >> The function >> >> approx_entropy(ts, edim = 2, r = 0.2*sd(ts), elag = 1) >> >> from the package,pracma I am calculating the approximate entropy of time >> series.ts >> >> I have a matrix of time series (one series per row i.e. 51 rows and 1 >> column) and I would estimate the approximate entropy for each of the rows, >> storing the results in a vector. So, I have written a code >> >> library(pracma) >> >> N<-nrow(ts) >> r<-matrix(0, nrow = N, ncol = 1)for (i in 1:N){ >> r[i]<-approx_entropy(ts[i,], edim = 2, r = 0.2*sd(ts[i,]), elag = 1)} >> >> * After calculating for 1 series, I need to calculate the same things for >> the multiple series by changing the dimension of the ncol.* >> >> Please help me in this regard. >> >> Thanks in advance. >> >> On Sat, Oct 6, 2018 at 2:22 PM Jim Lemon <drjimle...@gmail.com> wrote: >> >> > Hi Subhamitra, >> > Where I think the error arises is in the line: >> > >> > N<-nrow(mat) >> > >> > Since we don't know what "mat" is, we don't know what nrow(mat) will >> > return. If "mat" is not a matrix or data frame, it is likely to be >> > NULL. Try this: >> > >> > print(N) >> > >> > after defining it and see what it is. >> > >> > Jim >> > >> > On Sat, Oct 6, 2018 at 5:51 PM Subhamitra Patra >> > <subhamitra.pa...@gmail.com> wrote: >> > > >> > > Hello friends, >> > > >> > > I am very new in this R world. But, still doing some programming by >> > > learning. While running one code, I found the problem of "subscript out >> > of >> > > bounds". Please suggest me how to overcome this problem? For your >> > > reference, I am uploading my code here. >> > > >> > > The function >> > > >> > > approx_entropy(ts, edim =2, r = 0.2*sd(ts), elag = 1) >> > > >> > > library(pracma) >> > > >> > > N<-nrow(mat) >> > > r<-matrix(0, nrow = N, ncol = 1)for (i in 1:N){ >> > > r[i]<-approx_entropy(mat[i,], edim = 2, r = 0.2*sd(mat[i,]), elag = >> > 1)} >> > > >> > > After running this code, I am getting the error of >> > > >> > > *"subscript out of bounds"* >> > > >> > > Please help me for which I shall be always grateful to you. >> > > >> > > Thanks in advance. >> > > >> > > >> > > >> > > -- >> > > *Best Regards,* >> > > *Subhamitra Patra* >> > > *Phd. Research Scholar* >> > > *Department of Humanities and Social Sciences* >> > > *Indian Institute of Technology, Kharagpur* >> > > *INDIA* >> > > >> > > [[alternative HTML version deleted]] >> > > >> > > ______________________________________________ >> > > R-help@r-project.org mailing list -- To UNSUBSCRIBE and more, see >> > > https://stat.ethz.ch/mailman/listinfo/r-help >> > > PLEASE do read the posting guide >> > http://www.R-project.org/posting-guide.html >> > > and provide commented, minimal, self-contained, reproducible code. >> > >> >> >> -- >> *Best Regards,* >> *Subhamitra Patra* >> *Phd. Research Scholar* >> *Department of Humanities and Social Sciences* >> *Indian Institute of Technology, Kharagpur* >> *INDIA* >> >> [[alternative HTML version deleted]] >> >> ______________________________________________ >> R-help@r-project.org mailing list -- To UNSUBSCRIBE and more, see >> https://stat.ethz.ch/mailman/listinfo/r-help >> PLEASE do read the posting guide http://www.R-project.org/posting-guide.html >> and provide commented, minimal, self-contained, reproducible code. > > > > -- > Best Regards, > Subhamitra Patra > Phd. Research Scholar > Department of Humanities and Social Sciences > Indian Institute of Technology, Kharagpur > INDIA ______________________________________________ R-help@r-project.org mailing list -- To UNSUBSCRIBE and more, see https://stat.ethz.ch/mailman/listinfo/r-help PLEASE do read the posting guide http://www.R-project.org/posting-guide.html and provide commented, minimal, self-contained, reproducible code.