想象一下,我有以下文本文件名为d.txt
PLANT Jan-15 Feb-15 Mar-15 Apr-15 May-15 Jun-15 Jul-15 Aug-15 Sep-15 Oct-15 Nov-15 Dec-15 TOTAL
FirmA 23,893 18,593 19,182 22,798 10,294 22,017 22,251 20,352 159,380
B 11,957 25,752 34,608 30,960 29,662 30,979 32,311 35,918 232,147
PlantC 42,446 36,670 42,324 41,958 32,441 37,264 38,661 38,721 310,485
D 172,698 153,871 176,128 161,132 160,413 146,511 172,363 182,238 1,325,355
我想阅读前9列(即植物和1月15日至8月15日),但我没有成功。
read.table(paste0(path.txt, "\\d.txt"), colClasses = c(rep(NA, 9), rep(NULL, 5)), header = TRUE)
但是,这不起作用。对read.table
的调用正确地为data.frame
分配了14列,但是,缺少的变量意味着每列没有14个元素。fread
方法,因为它有select
和drop
选项。但是,根据我的知识,加载分隔符为多个空格的数据在fread
中是不可行的。read.fwf
一秒钟,数据交错的性质使得这一点变得不可行。 Plant Jan-15 Feb-15 Mar-15 Apr-15 May-15 Jun-15 Jul-15 Aug-15
1: FirmA 23,893 18,593 19,182 22,798 10,294 22,017 22,251 20,352
2: B 11,957 25,752 34,608 30,960 29,662 30,979 32,311 35,918
3: PlantC 42,446 36,670 42,324 41,958 32,441 37,264 38,661 38,721
4: D 172,698 153,871 176,128 161,132 160,413 146,511 172,363 182,238