[R] Apply a function to each cell of a ragged matrix
Gabor Grothendieck
ggrothendieck at myway.com
Wed Feb 18 02:44:46 CET 2004
I misread your post. Try any of these:
rowSums(rowsum(x,f))
rowsum(rowSums(x),f)
tapply(rowSums(x),f,sum)
by(rowSums(x),f,sum)
---
Date: Tue, 17 Feb 2004 19:10:11 -0500 (EST)
From: Gabor Grothendieck <ggrothendieck at myway.com>
To: <xiaoliu at jhmi.edu>, <r-help at stat.math.ethz.ch>
Subject: RE: [R] Apply a function to each cell of a ragged matrix
rowsum(x,f)
---
Date: Tue, 17 Feb 2004 17:38:46 -0500
From: XIAO LIU <xiaoliu at jhmi.edu>
To: R Help <r-help at stat.math.ethz.ch>
Subject: [R] Apply a function to each cell of a ragged matrix
R-Helpers:
There are a matrix x and a factor f. nrow(x) == length(f), e.g.:
x <- matrix(1:6, nrow = 3)
f <- factor(c("daytime", "daytime", "night"))
I want the sum of all elements of rows of "x" for each corresponding level in factor "f",
In this case, I want output like:
"daytime" [1] x[1,1]+x[2,1]+x[1,2]+x[2,2]
"night" [2] x[3,1]+x[3,2]
But, tapply(x,f,sum) or by(x,f,sum) do not work. What other functions can I use?
More information about the R-help
mailing list