So I see from help([[) what's happening: thank you very much. Il giorno mer, 23/12/2009 alle 18.59 -0800, Henrik Bengtsson ha scritto: > Use > > submat <- data[1:i,, drop=FALSE] > > /H > > On Wed, Dec 23, 2009 at 6:46 PM, Francesco Napolitano > <franap...@gmail.com> wrote: > > Hi all, > > > > I'm trying to learn R after years of Matlab's experience. Here is an > > issue I couldn't solve today. > > > > Consider the following piece of code (written by memory): > > > > for(i in 1:n){ > > submat <- data[1:i,] > > C <- colSums(submat) > > } > > > > The problem is that at the first iteration, data[1:1,] reduces to a > > vector and colSums returns an error. This sounds really strange to me > > because a sum-over-columns operation should have no problem working with > > columns of length 1. Matlab's "sum()" works just fine in such case. > > > > The error says that I need an at least 2D array. So I try using > > matrix(data[1:i,]). Unfortunately this returns a column instead of a > > row. So I could do t(matrix(data[1:i,])), but this would transpose the > > also the sub-matrices from the 2nd iteration on. I could fix everything > > with some "if" but it would be really terrible code :-/. > > > > I'm sure I'm missing something because my neurons stick with Matlab > > behaviour. Can you help me to understand what's wrong with my reasoning? > > > > Thank you very much, > > Francesco. > > > > ______________________________________________ > > R-help@r-project.org mailing list > > 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. > >
______________________________________________ R-help@r-project.org mailing list 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.