使用readxl和正确的variablestypes将多个excel电子表格读取到R中

我有几个excel文件,我试图读取到R使用包readxl 。 Excel文件由多个标签组成,每个标签有60000行,有四列variables。 第一列是一个简单的整数计数,从0,1,2等等跟踪秒。第二列冒号分隔(:)时间在HH:MM:SS。 第三列是以MM / DD / YYYY分隔的正斜杠( / )date。 第四列是浮点小数(例如338.6)。

使用下面的代码,我得到四列和一些格式是一致的,但有些数据似乎被曲解为date或小数而不是整数,时间或date。

  > data1 <- lapply(excel_sheets("./file_name.xls"), read_excel, path = "./file_name.xls", col_names = FALSE) > head(data1[[1]]) X1 X2 X3 X4 1 502342 02:12:50 02/04/2015 338.6 2 502341 02:12:49 02/04/2015 338.1 3 502340 02:12:48 02/04/2015 337.5 4 502339 02:12:47 02/04/2015 337.6 5 502338 02:12:46 02/04/2015 337.5 6 502337 02:12:45 02/04/2015 338.0 > head(data1[[2]]) X1 X2 X3 X4 1 483664 08:56:48 488774 08:52:22 2 08:49:32 08:56:47 488774 08:52:22 3 185.2 08:56:46 488774 485475 4 483663 08:56:45 488774 08:52:22 5 08:49:31 08:56:44 488774 08:52:22 6 483662 08:56:43 488774 485475 > class(data1[[2]]$X1) [1] "character" > mode(data1[[2]]$X1) [1] "character" > tail(data1[[1]]) X1 X2 X3 X4 59995 08:49:35 08:56:54 488774 08:52:22 59996 483666 08:56:53 488774 485475 59997 08:49:34 08:56:52 488774 08:51:50 59998 185.3 08:56:51 488774 08:51:50 59999 483665 08:56:50 488774 485475 60000 08:49:33 08:56:49 488774 485475 > tail(data1[[2]]) X1 X2 X3 X4 59995 09:29:17 497592 488774 488206 59996 485927 497591 488774 488206 59997 09:29:16 497590 488774 488206 59998 485926 363.0 488774 488206 59999 09:29:15 12:49:37 488774 488206 60000 485925 497588 488774 488206 

我也尝试使用col_types来定义列types,但是这会返回一个充满NA的数据框。

  > data1 <- lapply(excel_sheets("./file_name.xls"), read_excel, path = "./file_name.xls", col_names = FALSE, col_types = c("numeric", "numeric", "date", "numeric")) There were 50 or more warnings (use warnings() to see the first 50) > head(data1[[1]]) X1 X2 X3 X4 1 NA NA <NA> NA 2 NA NA <NA> NA 3 NA NA <NA> NA 4 NA NA <NA> NA 5 NA NA <NA> NA 6 NA NA <NA> NA 

使用lapply()read_excel()返回一个数据框的列表。 我不知道如果我应该尝试更改variablestypes或如何做到这一点。 excel文件本身在variablestypes方面看起来一致。 我甚至在data1[[2]]检查了59998行,显示X2为363.0,但应该是03:42:51。

我应该尝试在Excel中格式化这些数据还是尝试在R中更改它? 目前一切似乎都是阶级性格的。 R中改变variablestypes的最有效方法是什么?

谢谢你的帮助。