I need to do a simple cumulative sum by group and add the result to the
data. I found an earlier thread in the help files with a few suggestions.
Somewhat, one of the suggestions does not work with "my data", and I don't
really understand why ?
The error am getting using the "my data" below is...
Error in data.frame(..., check.names = FALSE) :
arguments imply differing number of rows: 10, 0
I'd truly appreciate your input on this matter.
Am still a beginner on R, but am determined to use it for the rest of my
life...
Thanks in advance.
Sincerely,
Jose
# The example I found on the help files provided by J. Fox on Wed Jul 24 2002
f <- c("left","left","left","left","left","left","left","left","left",
"right","right","right","right","right","right","right","right","right",)
x <- c(1,2,3,4,5,6,7,8,9,1,2,3,4,5,6,7,8,9)
y <- c(0,0,9,10,23,45,13,2,6,10,26,9,50,78,20,7,20,19)
tmp <- data.frame(f,x,y)
cbind(tmp, s=c(lapply(split(tmp, tmp$f), function(x) cumsum(x$y)),
recursive=T))
# my data, the same code but it doesn't work...
v1 <- c(1,1,1,1,1,2,2,2,2,2)
v2 <- c(1,2,3,4,5,1,2,3,4,5)
v3 <- c(0,0.1,0.11,0.3,0.5,0,0.4,0.5,2.4,2.6)
d.1 <- data.frame(v1,v2,v3)
cbind(d.1, v4=c(lapply(split(d.1, d.1$v1), function(x) cumsum(x$y)),
recursive=T))
--
Jose A. Hernandez
Ph.D. Candidate
Precision Agriculture Center
Department of Soil, Water, and Climate
University of Minnesota
1991 Upper Buford Circle
St. Paul, MN 55108
Ph. (612) 625-0445, Fax. (612) 625-2208
[[alternative HTML version deleted]]
______________________________________________
[EMAIL PROTECTED] mailing list
https://www.stat.math.ethz.ch/mailman/listinfo/r-help
PLEASE do read the posting guide! http://www.R-project.org/posting-guide.html