尝试读取本地csv文件时出现错误
xts中的错误(dat,order.by = as.Date(rownames(dat),“%m /%d /%Y”)): 'order.by'不能包含'NA','NaN'或'Inf'
我正在尝试https://rpubs.com/mohammadshadan/288218中的示例,如下所示:
tmp_file <- "test.csv"
# Create dat by reading tmp_file
dat <- read.csv(tmp_file,header=FALSE)
# Convert dat into xts
xts(dat, order.by = as.Date(rownames(dat), "%m/%d/%Y"))
# Read tmp_file using read.zoo
dat_zoo <- read.zoo(tmp_file, index.column = 0, sep = ",", format = "%m/%d/%Y")
# Convert dat_zoo to xts
dat_xts <- as.xts(dat_zoo)
事情就是当我尝试读取文件时,就像在从服务器读取文件的示例中一样,这种方式有效,但是当我在本地尝试使用csv文件时,即使它与Web中的文件具有相同的信息
我尝试使用Notepad,Notepad ++和Excel创建csv文件,但没有运气。 知道我缺少什么?,我也尝试使用read.table而不是csv,结果相同......
如果header = TRUE,我收到以下错误:
警告消息:1:在read.table中(file = file,header = header,sep = sep,quote = quote,:找不到最终的最终行 'test.csv'上的readTableHeader 2:在读取(文件,...):不完整 readTableHeader在'test.csv'上找到的最后一行
答案 0 :(得分:1)
问题是header=FALSE
中的read.csv
参数。
read.csv
将选择第一列作为行名称,第一行包含的字段少于列数。 header = FALSE
时,它不会创建行名称。
以下是问题的一个示例:
dat <- read.csv(text = "a,b
1/02/2015,1,3
2/03/2015,2,4", header = F)
as.Date(rownames(dat), "%m/%d/%Y")
#> [1] NA NA NA
删除header = F
后,问题就解决了:
dat <- read.csv(text = "a,b
1/02/2015,1,3
2/03/2015,2,4")
as.Date(rownames(dat), "%m/%d/%Y")
#> [1] "2015-01-02" "2015-02-03"