在R中读取csv数据文件
我正在使用在R中读取csv数据文件,r,read.csv,import-from-csv,R,Read.csv,Import From Csv,我正在使用read.table读取数据文件。并得到以下错误: 扫描错误(文件、内容、nmax、sep、dec、quote、skip、nlines、na.strings、: scan()应为“真”,得到“真” 我知道这意味着我的数据文件中有一些错误,问题是我如何找到它的位置。错误消息没有告诉哪一行有问题,我很难找到它。或者我如何可以跳过这些行 这是我的R代码: data<-read.csv("/home/jianfezhang/prod/conversion_yaap/data/part-r
read.table
读取数据文件。并得到以下错误:
扫描错误(文件、内容、nmax、sep、dec、quote、skip、nlines、na.strings、:scan()应为“真”,得到“真” 我知道这意味着我的数据文件中有一些错误,问题是我如何找到它的位置。错误消息没有告诉哪一行有问题,我很难找到它。或者我如何可以跳过这些行 这是我的R代码:
data<-read.csv("/home/jianfezhang/prod/conversion_yaap/data/part-r-00000",
sep="\t",
col.names=c("site",
"treatment",
"mode",
"segment",
"source",
"itemId",
"leaf_categ_id",
"condition_id",
"auct_type_code",
"start_price_lstg_curncy",
"bin_price_lstg_curncy",
"start_price_variance",
"start_price_mean",
"start_price_media",
"bin_price_variance",
"bin_price_mean",
"bin_price_media",
"is_sold"),
colClasses=c(rep("factor",5),"numeric",rep("factor",3),rep("numeric",8),"factor")
);
data您得到的错误是由colClasses
参数引起的-文件中的某些值与您指定的数据类型不匹配
大多数时候我都会遇到类似的情况,我可能只是在colClasses
参数中遇到了一些计数问题,例如
colClasses=c(rep("factor",5),"numeric", rep("factor",4), rep("numeric",7),"factor")
而不是默认值。
这可以通过仔细比较文件第一行的内容和指定的数据类型来检查
如果这对您不起作用,您可能有一些错误的数据类型,而您并不期望它。一种简单但缓慢的方法是删除colClasses
参数,然后在没有特定选项的情况下首先读取整个文件-可能添加stringsAsFactors=FALSE
以仅获取字符值。这可能会起作用
然后您可以尝试逐个转换每一列,如
data$itemId <- as.numeric(data$itemId)
data$itemId您得到的错误是由colClasses
参数引起的-文件中的某些值与您指定的数据类型不匹配
大多数时候我都会遇到类似的情况,我可能只是在colClasses
参数中遇到了一些计数问题,例如
colClasses=c(rep("factor",5),"numeric", rep("factor",4), rep("numeric",7),"factor")
而不是默认值。
这可以通过仔细比较文件第一行的内容和指定的数据类型来检查
如果这对您不起作用,您可能有一些错误的数据类型,而您并不期望它。一种简单但缓慢的方法是删除colClasses
参数,然后在没有特定选项的情况下首先读取整个文件-可能添加stringsAsFactors=FALSE
以仅获取字符值。这可能会起作用
然后您可以尝试逐个转换每一列,如
data$itemId <- as.numeric(data$itemId)
data$itemId您可以将调用发布到read.table
吗?如果可能的话,可以发布数据文件的前几行吗?我刚刚从R.utils
包中找到了readTable
。readTable
提供了一个选项verbose=TRUE
。这可能会对您有所帮助。您可以将调用发布到read.table
吗是否可以查看数据文件的前几行?我刚刚从R.utils
包中找到了readTable
。readTable
提供了一个选项verbose=TRUE
。这可能会对您有所帮助。