1
2
3# given number possibly followed by SI letter (e.g. 32.5k where k means 1000)
4# replace letter with e followed by appropriate digits.
5# (see formatEng2R by Hans-Joerg Bibiko in the R Wiki)
6
7conv <- list(y = "e-24", z = "e-21", a = "e-18", f = "e-15", p = "e-12",
8    n = "e-9", u = "e-6", m = "e-3", d = "e-1", c = "e-2", k = "e3",
9    M = "e6", G = "e9", T = "e12", P = "e15", E = "e18", Z = "e21", Y = "e24")
10gsubfn(".$", conv, c("19", "32.5M"))
11
12