# Tip from an email in: http://tolstoy.newcastle.edu.au/R/help/06/07/30469.html formatEng <- function(x) { s<-as.numeric(strsplit(format(x, scientific=T),"e")[[1]]) return(paste(s[1]*10^(s[2]%%3),as.integer(s[2]-(s[2]%%3)),sep="e")) } # Use with sapply on dataframe elements sapply(x$col, formatEng)