Advertisement
karstenw

data.table transform vs. :=

Dec 16th, 2022 (edited)
1,896
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
R 0.58 KB | None | 0 0
  1. stopifnot(require(data.table))
  2. stopifnot(require(microbenchmark))
  3.    
  4. dat <- data.frame(x=sample.int(10^6, 10^5))
  5. setDT(dat)
  6.    
  7. microbenchmark(transform(dat, y=sin(x)))
  8. # Unit: milliseconds
  9. #                       expr     min       lq     mean   median       uq
  10. #  transform(dat, y = sin(x)) 67.5327 71.20615 74.45437 72.85815 75.73555
  11. #      max neval
  12. #  120.9635   100
  13.  
  14. microbenchmark(dat[,y:=sin(x)])
  15. # Unit: milliseconds
  16. #                   expr    min      lq     mean median     uq    max neval
  17. # dat[, `:=`(y, sin(x))] 4.2602 4.40465 4.816463 4.6203 5.0858 9.8246   100
  18.  
  19.  
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement