当我尝试将数据从Excel导入R studio时,数字列在R中作为逻辑导入。
有没有办法将这些列作为数字导入 R 中?Excel 中的列已格式化为数字。
我正在使用read_excel
导入文件。
我尝试导入的电子表格有 80 列。
我遇到了完全相同的问题,由于保密政策,我无法提供 excel 文件。但是,我在这里找到了 jennybc 提供的 github 解决方案,她在那里发布了:
"但我猜你在这个顶部有很多空白值 工作表。看起来此专栏被猜测为合乎逻辑,并且 任何既不是 NA 也不是零的东西都会变成 TRUE。如果我的诊断 是正确的,您应该指定所需的列类型 (在这种情况下可能是数字(或将guess_max增加到某些内容 高于默认值 1000。
由于我的文件格式发生了一些变化,我选择了guess_max
建议,这一行为我解决了问题:
temp.data <- read_xlsx(filepath, sheet = 1, guess_max = 10000)
使用col_types
并显式指定列类型。
read_excel(path, sheet = 1, col_names = TRUE, col_types = c("text","numeric","date"), na = "", skip = 0)
https://www.rdocumentation.org/packages/readxl/versions/0.1.1/topics/read_excel
由于您没有提供数据集作为示例,因此我想出了以下数据集:
df <- structure(list(`1_a` = c(1212, 1221, 32432), `2_a` = c(121, 123, 3), `3_a` = c(34, 343, 232),
`4_a` = c(65, 23, 123), `5_a` = c(34, 432, 1)), row.names = c(NA, -3L),
class = c("tbl_df", "tbl", "data.frame"))
数据集都是数字,列名以数字开头。
使用以下代码,我能够读取 excel 文件,同时保留列名(测试.xlsx是上述数据集的示例(:
library(readxl)
df <- read_excel("test.xlsx", sheet = 1, col_names = TRUE)