Subhamitra Patra
2018-Oct-06 07:29 UTC
[R] Requesting for help on the problem of "subscript out of bounds"
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]]
Jim Lemon
2018-Oct-06 08:51 UTC
[R] Requesting for help on the problem of "subscript out of bounds"
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.patra at 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 at 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.
Subhamitra Patra
2018-Oct-06 09:14 UTC
[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 <drjimlemon at 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.patra at 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 at 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]]