After importing a table from Wikipedia, I have a list of values of the following form:
> tbl[2:6]
$`Internet
Explorer`
[1] \"30.71%\" \"3
Well I think you could do it the following way, but I don't know if it is better or cleaner than yours :
df <- data.frame(tbl)
df[,-1] <- as.numeric(gsub("%", "", as.matrix(df[,-1])))
Which gives :
R> head(df)
Date Internet.Explorer Chrome Firefox Safari Opera Mobile
1 January 2013 30.71 36.52 21.42 8.29 1.19 14.13
2 December 2012 30.78 36.42 21.89 7.92 1.26 14.55
3 November 2012 31.23 35.72 22.37 7.83 1.39 13.08
4 October 2012 32.08 34.77 22.32 7.81 1.63 12.30
5 September 2012 32.70 34.21 22.40 7.70 1.61 12.03
6 August 2012 32.85 33.59 22.85 7.39 1.63 11.78
R> sapply(df, class)
Date Internet.Explorer Chrome Firefox
"factor" "numeric" "numeric" "numeric"
Safari Opera Mobile
"numeric" "numeric" "numeric"