Hello,
I created a data.frame which contains two columns: df$P (Power) et
df$DateTime (time). I'd like to add a new column df$diffP (difference of
Power between T and T-2).
I made a loop :
for (i in 3:length(df$DateTime)){
df$diffP[i] = df$P[i] - df$P[i-2]
}
execution time result is
1. You are doing exactly what one is recommended to avoid in R. Have
you read an Introduction to R? -- especially about vectorization?
2. To answer your question: ?diff
It will probably be an order or 2 of magnitude faster.
-- Bert
On Fri, Jan 6, 2012 at 6:39 AM, ikuzar raz...@hotmail.fr
Try this:
df - data.frame(power = runif(1))
# add difference
diffGap - 2
df$diff - c(rep(NA, diffGap), head(df$power, -diffGap) - tail(df$power,
-diffGap))
head(df, 10)
powerdiff
1 0.86170585 NA
2 0.90672473 NA
3 0.96868367 -0.10697782
4 0.44199262
Ok, thanks, it works !
--
View this message in context:
http://r.789695.n4.nabble.com/data-frame-temporal-complexity-tp4269585p4270073.html
Sent from the R help mailing list archive at Nabble.com.
__
R-help@r-project.org mailing list
Something like this (not tested)?
df$diffP - c(NA, NA, diff(df$P,2))
-Don
--
Don MacQueen
Lawrence Livermore National Laboratory
7000 East Ave., L-627
Livermore, CA 94550
925-423-1062
On 1/6/12 6:39 AM, ikuzar raz...@hotmail.fr wrote:
Hello,
I created a data.frame which contains two
I did not test this way, I 'll do it later, I think that df$diffP - c(NA,
NA, diff(df$P,2)) is the best way to compute the difference !! I 'll post
the result here
--
View this message in context:
http://r.789695.n4.nabble.com/data-frame-temporal-complexity-tp4269585p4270256.html
Sent from the
6 matches
Mail list logo