我需要更改整个data.frame的列类。理想情况是寻找apply解决方案,但tidyverse也欢迎其他解决方案。
示例数据
set.seed(1)
d <- data.frame("numbers" = as.character(1:10),
"letters" = letters[1:10],
"boolean" = sample(c("T", "F"), 10, T),
stringsAsFactors = F)
Run Code Online (Sandbox Code Playgroud)
我想制作第一列(numbers)numeric,第二列(letters)character和第三列(boolean)logical。
据称?type.convert,用法是
type.convert(x,...)
x-向量,矩阵,数组,数据框或列表。
因此,我们可以直接在type.convert上应用data.frame。
d <- type.convert(d, as.is = TRUE)
str(d)
#'data.frame': 10 obs. of 3 variables:
# $ numbers: int 1 2 3 4 5 6 7 8 9 10
# $ letters: chr "a" "b" "c" "d" ...
# $ boolean: logi TRUE FALSE TRUE TRUE FALSE TRUE ...
Run Code Online (Sandbox Code Playgroud)
或者另一个选择是type_convert从readr
library(readr)
type_convert(d)
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
60 次 |
| 最近记录: |