首页 > 解决方案 > 使用 read_xlsx 时加载巨大的 excel 文件(100mb)时出现问题。在某些单元格中错误地返回“TRUE”

问题描述

我正在处理一个巨大的数据框,并且在从 excel 文件中加载它时遇到了一些问题。我只能使用 readxl 包中的 read_xlsx 加载它。但是我现在意识到某些单元格包含“TRUE”而不是 excel 文件中的实际值。它如何错误地加载文件,是否有任何解决方案可以避免这种情况?

标签: rreadxl

解决方案


遵循这个建议解决了这个问题。

JasonAizkalns:很难说,但这可能是因为允许 read_xlsx “猜测”列类型。如果您事先知道列类型,最好使用 col_types 参数指定它们。在这种情况下,它可能已经猜到列类型是合乎逻辑的,而实际上它应该是其他东西(例如,文本或数字)

从没有数值的列中清除数据集,然后使用x<-read_xlsx(filename, skip = 1, col_types = "numeric"). 此后 iy<- read_xlsx(filename, skip = 1, col_types = "date")在包含日期的列上。我使用 cbind(y,x) 来完成具有无数字列的数据集。如果缺少很多值, read_xlsx 似乎会误解具有数值的列。


推荐阅读