On Tue, 23 Nov 2010, Joel wrote:
Hi
When I try to update an number in a large data.frame by its pos It's really
slow it take almost a sec to do this and I wonder why and if where is any
faster way to update a number in a data.frame
ive tried
DF$col[POS]<-number
DF[xPOS,yPOS]<-number
See
?tracemem
then try
tracemem( DF )
DF$col[POS]<-number
DF[xPOS,yPOS]<-number
then
mat <- as.matrix( DF )
tracemem( mat )
mat[ 2,3 ] <- 4
mat[ 15 ] <- 5
If your data.frame can be represented by a matrix, a single update will
likely be faster as it can be done without making any copies.
If you are doing more than one update, it will help to do them all at
once. Reread
?Subscript
and section 5.2 and 5.3 of Intro to R if you are unsure how to do that.
HTH,
Chuck
Thx
//Joel
--
View this message in context:
http://r.789695.n4.nabble.com/Slow-update-insert-on-Data-frame-tp3055707p3055707.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.
Charles C. Berry Dept of Family/Preventive Medicine
cbe...@tajo.ucsd.edu UC San Diego
http://famprevmed.ucsd.edu/faculty/cberry/ La Jolla, San Diego 92093-0901
______________________________________________
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.