On Dec 7, 2010, at 2:43 PM, Jonathan P Daily wrote:
I have a need to find the order of number to get a scaling parameter
as a
power of 10. I have a function that works *so far*, but it is ugly and
probably buggy. In the interest of avoiding code-based outliers in my
data, I thought I would ask if anyone here has a better way.
scl <- function(x){
+ length(charToRaw(format(trunc(x), scientific = F)))-1}
a <- 123456789
b <- 1E15
c <- 12.345
scl(a)
[1] 8
scl(b)
[1] 15
scl(c)
[1] 1
scl<- function(x) trunc(log(x,10))
> scl(a)
[1] 8
>
> scl(b)
[1] 15
>
> scl(c)
[1] 1
Seems mathematically clearer.
--
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.