我用LibreOffice和gedit在Ubuntu14.04LTS中打开一个CSV文件,在这两个应用程序中我都可以看到文件OK。
我用很多方法尝试使用read.csv()将该文件读入R中,但它正在将空白" "替换为dots ".",以及与字母不同的其他奇怪的东西。
我试过了
codepages <- setNames(iconvlist(), iconvlist())
x <- lapply(codepages, function(enc) try(read.csv("ticket.csv", fileEncoding=enc)))但无论我插入哪种编码,它总是失败的。
编辑:
我把文件寄给你
https://drive.google.com/open?id=0B1P26eyiBDcNWWR0OGJwU0E4V00
发布于 2015-08-24 11:12:37
(在linux shell中)
$ enca -f -L none ticket_import_template.csv
7bit ASCII characters
$ file ticket_import_template.csv
ticket_import_template.csv: ASCII text, with very long lines看起来像普通的ASCII。在R:
dplyr::glimpse(read.csv("ticket_import_template.csv", check.names=FALSE))
## Observations: 1
## Variables:
## $ Ticket Number (lgl) NA
## $ *Open Date (fctr) 01/08/15 11:00
## $ 1st Response Date (lgl) NA
## $ Due Date (lgl) NA
## $ Close Date (lgl) NA
## $ Status Type (lgl) NA
## $ Client (user name) (int) 950000
## $ Localizaci?n (lgl) NA
## $ *Request Type (semicolon delimited) (fctr) Instalaciones
## $ Priority Type (lgl) NA
## $ Subject (lgl) NA
## $ *Request Detail (fctr) PROBANDO
## $ Tech Username (lgl) NA
## $ Recurso Numbers (lgl) NA
## $ Notes (lgl) NA
## $ Room (lgl) NA
## $ Department (lgl) NA
## $ Tecnico asignado (lgl) NA
## $ Delete? (Y/N) (lgl) NA
## $ NOTE: * = Field required for new records. (lgl) NA您也可以使用:
readr::read_csv("ticket_import_template.csv")rio::import("ticket_import_template.csv")data.table::fread("ticket_import_template.csv")此外,由于它们的默认值是将空格(以及更多的)保留在标题列名中。
read.csv在列标题中添加了“理智的.”,因为它们中有空格。实际上,您最终会后悔用了很长时间的空格(如check.names == FALSE)或虚线列名。您应该做的第一件事就是重命名这些列。
https://stackoverflow.com/questions/32180208
复制相似问题