On Jan 25, 2011, at 9:58 PM, eric wrote:
I want to use diff to take the differences in a column "Close" of a
data
frame "y". But I'd like to do it using the transform function so a
new data
frame is created with a difference column. The problem is that diff
gives
one less than the number of elements in the original data frame. So
transform gives an error message. I know the first element of diff
should be
NA or ideally 0. But not sure how I get there. Any suggestions ?
j
Date Close
1 11/20/1985 156.412
2 11/21/1985 155.112
3 11/22/1985 154.182
4 11/25/1985 154.192
5 11/26/1985 153.722
6 11/27/1985 153.712
d <-diff(j[,2])
d
[1] -1.30 -0.93 0.01 -0.47 -0.01
j <- transform(j, delta=diff(j[,2]))
> j <- transform(j, delta=c(NA, diff(j[,2])))
> j
Date Close delta
1 11/20/1985 156.412 NA
2 11/21/1985 155.112 -1.30
3 11/22/1985 154.182 -0.93
4 11/25/1985 154.192 0.01
5 11/26/1985 153.722 -0.47
6 11/27/1985 153.712 -0.01
Error in data.frame(list(Date = c(5620L, 5639L, 5657L, 5706L, 5721L,
5736L :
arguments imply differing number of rows: 6, 5
Calls: transform -> transform.data.frame -> do.call -> data.frame
--
View this message in context:
http://r.789695.n4.nabble.com/Using-diff-and-transform-tp3237397p3237397.html
Sent from the R help mailing list archive at Nabble.com.
______________________________________________
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.
David Winsemius, MD
West Hartford, CT
______________________________________________
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.