【发布时间】:2015-11-02 13:31:07
【问题描述】:
我在 Excel 中有一个如下所示的数据库:
Name Note Value1 Value2
Adidas first 1.74E-06 1.06E-07
以此类推,有数千行和一堆带有值的列。
但是,当我使用:
data<-read.xlsx2("data.xlsx",header = T,sheetIndex = 1,colClasses="numeric")
它以字符串形式返回所有内容:
is.numeric(data$X1)
[1] FALSE
到目前为止,我是这样处理它的:as.numeric(as.character(data$X1)) - 但是有很多列它变得非常累。
如何不使用这种技巧直接直接上传?
【问题讨论】:
-
你可以试试
library(readxl); read_excel('yourfile.xlsx')# Name Note Value1 Value2 (chr) (chr) (dbl) (dbl) 1 Adidas first 1.74e-06 1.06e-07它通过复制/粘贴示例来工作。 -
那行得通。我很惊讶它与
read_excel一起工作,但它没有与xlsx2一起工作。谢谢 -
@llja 我没有尝试使用
xlsx2.. 一种可能性是您指定了colClasses='numeric而不是colClasses=c('character', 'character', 'numeric', 'numeric')。我猜它会将“数字”循环到每一列,并且由于第一列显然不是“数字”,所以整个列都得到了第一列的类。