I have the following data frame:
df <- structure(list(Foo.ID.6hr.SP = c("0.00261", "0.00271", "0.00281",
"0.00258", "0.00281", "0.00305"), Foo.IP.6hr.SP = c("0.00439",
"0.00496", "0.00469", "0.00437", "0.00454", "0.00418"), LPS.IV.SP = c("0.00294",
"0.00290", "0.00267", "0.00278", "0.00288", "0.00295"), MPL.IV.SP = c("0.00335",
"0.00326", "0.00292", "0.00318", "0.00321", "0.00329")), .Names = c("Foo.ID.6hr.SP",
"Foo.IP.6hr.SP", "LPS.IV.SP", "MPL.IV.SP"), row.names = c("B_Fo_LN",
"B_Fo_MLN", "B_Fo_PC", "B_Fo_Sp", "B_FrE_BM", "B_FrE_FL"), class = "data.frame")
df
#> Foo.ID.6hr.SP Foo.IP.6hr.SP LPS.IV.SP MPL.IV.SP
#> B_Fo_LN 0.00261 0.00439 0.00294 0.00335
#> B_Fo_MLN 0.00271 0.00496 0.00290 0.00326
#> B_Fo_PC 0.00281 0.00469 0.00267 0.00292
#> B_Fo_Sp 0.00258 0.00437 0.00278 0.00318
#> B_FrE_BM 0.00281 0.00454 0.00288 0.00321
#> B_FrE_FL 0.00305 0.00418 0.00295 0.00329
str(df)
#> 'data.frame': 6 obs. of 4 variables:
#> $ Foo.ID.6hr.SP: chr "0.00261" "0.00271" "0.00281" "0.00258" ...
#> $ Foo.IP.6hr.SP: chr "0.00439" "0.00496" "0.00469" "0.00437" ...
#> $ LPS.IV.SP : chr "0.00294" "0.00290" "0.00267" "0.00278" ...
#> $ MPL.IV.SP : chr "0.00335" "0.00326" "0.00292" "0.00318" ...
As shown in str(df) the value is in
chr`. How can I convert to numeric?
I tried this but the row name is gone:
> as.data.frame(sapply(df,as.numeric))
Foo.ID.6hr.SP Foo.IP.6hr.SP LPS.IV.SP MPL.IV.SP
1 0.00261 0.00439 0.00294 0.00335
2 0.00271 0.00496 0.00290 0.00326
3 0.00281 0.00469 0.00267 0.00292
4 0.00258 0.00437 0.00278 0.00318
5 0.00281 0.00454 0.00288 0.00321
6 0.00305 0.00418 0.00295 0.00329