如何在 R 中將字元資料框轉換成數值資料框?
有時,數值會被記錄為字元值,並且在開始分析之前,我們需要將它們轉換為數值型別。對於 R 中的整個資料框也是可行的。因此,我們可以使用 sapply 函式將資料框的列轉換為數值型別,並透過使用 as.data.frame 讀入資料框來儲存輸出。
示例 1
考慮下面的資料框 −
x<−sample(c("1","2","3"),20,replace=TRUE) df1<−data.frame(x) df1
輸出
x 1 2 2 2 3 2 4 1 5 2 6 3 7 1 8 2 9 2 10 2 11 1 12 1 13 2 14 2 15 1 16 1 17 3 18 2 19 3 20 1
檢查 df1 的結構 −
示例
str(df1)
輸出
'data.frame': 20 obs. of 1 variable: $ x: chr "2" "2" "2" "1" ...
將 df1 的列的資料型別轉換為數值資料型別 −
示例
df1<−as.data.frame(sapply(df1,as.numeric)) str(df1)
輸出
'data.frame': 20 obs. of 1 variable: $ x: num 2 2 2 1 2 3 1 2 2 2 ...
示例 2
y1<−sample(c("254","324","220","301"),20,replace=TRUE) df2<−data.frame(y1) df2
輸出
y1 1 324 2 254 3 220 4 254 5 220 6 220 7 324 8 254 9 324 10 220 11 324 12 324 13 301 14 324 15 220 16 301 17 301 18 324 19 301 20 254
示例
str(df2)
輸出
'data.frame': 20 obs. of 1 variable: $ y1: chr "324" "254" "220" "254" ...
示例
df2<−as.data.frame(sapply(df2,as.numeric)) str(df2)
輸出
'data.frame': 20 obs. of 1 variable: $ y1: num 324 254 220 254 220 220 324 254 324 220 ...
廣告