错误列';使用'读取数据时的模式;na.字符串';和';colClasses';参数为';fread&x27;R中的函数
Windows 8.1,R版本3.1.1(2014-07-10),系统x86_64,mingw32 我有一个包含大量观察结果的文件()。下面是文件中的一些字符串错误列';使用'读取数据时的模式;na.字符串';和';colClasses';参数为';fread&x27;R中的函数,r,data.table,fread,R,Data.table,Fread,Windows 8.1,R版本3.1.1(2014-07-10),系统x86_64,mingw32 我有一个包含大量观察结果的文件()。下面是文件中的一些字符串 Date;Time;Global_active_power;Global_reactive_power;Voltage;Global_intensity;Sub_metering_1;Sub_metering_2;Sub_metering_3 16/12/2006;17:24:00;4.216;0.418;234.840;18.400;
Date;Time;Global_active_power;Global_reactive_power;Voltage;Global_intensity;Sub_metering_1;Sub_metering_2;Sub_metering_3
16/12/2006;17:24:00;4.216;0.418;234.840;18.400;0.000;1.000;17.000
16/12/2006;17:25:00;5.360;0.436;233.630;23.000;0.000;1.000;16.000
28/4/2007;00:20:00;0.492;0.208;236.240;2.200;0.000;0.000;0.000
28/4/2007;00:21:00;?;?;?;?;?;?;
21/12/2006;11:25:00;0.246;0.000;241.740;1.000;0.000;0.000;0.000
21/12/2006;11:26:00;0.246;0.000;241.830;1.000;0.000;0.000;0.000
NA值用“?”表示。我正试着用计算机读取文件
epcData <- fread(dataFile,
sep = ";",
header = TRUE,
na.strings = "?",
colClasses = c("character", "character", rep("numeric", 7)),
stringsAsFactors = FALSE)
第10排是
28/4/2007;00:21:00;?;?;?;?;?;?;
epcData[10]
印刷品
Date Time Global_active_power Global_reactive_power Voltage
1: 28/4/2076 00:21:00 NA NA NA
Global_intensity Sub_metering_1 Sub_metering_2 Sub_metering_3
1: NA NA NA NA
但所有列的模式都是“字符”,即使对于第3:9列也是如此(但colClasses=c(“字符”、“字符”、rep(“数字”,7)))
出了什么问题?从今天开始,使用
data.table的1.12.2版。这不再是一个问题,上述csv数据的导入工作完美无瑕,所有问号都被替换为NA
s您使用的是什么操作系统?如果是Linux或OSX,可能值得在fread开始阅读之前使用fread(sed-i's/?/NA/g'yourcsv.csv)
查找并替换问号。对不起!Windows 8.1,R版本3.1.1(2014-07-10),系统x86_64,MingW32银行Mike.Gahan!我有一些解决这个问题的办法。但我很感兴趣的是我的代码有什么问题。@Mike.Gahan read.table(dataFile,header=TRUE,sep=“;”,na.strings=“?”,colClasses=c(“character”,“character”,rep(“numeric”,7)),stringsAsFactors=FALSE))'read.table'**具有相同的参数**工作正常,但速度非常慢。
Date Time Global_active_power Global_reactive_power Voltage
1: 28/4/2076 00:21:00 NA NA NA
Global_intensity Sub_metering_1 Sub_metering_2 Sub_metering_3
1: NA NA NA NA