[R] command similar to colSums for rowSums?
Will Carr
torch742 at yahoo.com
Mon Nov 30 20:01:43 CET 2009
This seems to work quite well and gives an ~85% speed increase compared to
the for loop. Thanks a bunch!
Peter Ehlers wrote:
>
> Or maybe aperm() is faster:
>
> max(colSums(aperm(yourArray, c(2,1,3))))
>
> -Peter Ehlers
>
> Peter Ehlers wrote:
>> Does this
>>
>> max(apply(yourArray, 3, rowSums))
>>
>> give you what you want?
>>
>> -Peter Ehlers
>>
>> Will Carr wrote:
>>> Working with an NxMxO sized matrix, currently I can do this in my code:
>>>
>>> if (max(colSums(array)) >= number)
>>>
>>> But to get an equivalent result using rowSums, I have to do:
>>>
>>> for (i in 1:10)
>>> {
>>> if (max(rowSums(array[,,i])) >= number) }
>>>
>>> I'm running both in a much larger loop that loops millions of times, so
>>> speed and such is quite a big factor for me. Currently, the colSums line
>>> uses about 1/10th as much time as the rowSums' for loop, and the for
>>> loop
>>> actually took as much time as the rest of my code combined took to
>>> execute.
>>> Is there a faster way than using a for loop and rowSums?
>>
>> ______________________________________________
>> R-help at 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 at 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.
>
>
--
View this message in context: http://n4.nabble.com/command-similar-to-colSums-for-rowSums-tp931394p931540.html
Sent from the R help mailing list archive at Nabble.com.
More information about the R-help
mailing list