2015-01-23 3 views
3
# 2.3 MB file 
download.file("http://www.nzta.govt.nz/resources/crash-analysis-system-data/docs/crash-data-2014.csv" 
       , "temp.csv") 

# Blank lines cause fread to fail 
data.table::fread("temp.csv") 

# Empty data.table (0 rows) of 29 cols: TLA NAME,CRASH ROAD,CRASH DIST,CRASH DIRN,INTSN,SIDE ROAD... 

Открытие файла в Notepad ++ показывает, что после каждой пары символов CRLF был вставлен дополнительный символ CR. Этого не происходит, если я загружаю файл через браузер (Chrome).download.file добавляет дополнительную CR после каждого CRLF

Что происходит?

Я нахожусь в Windows XP, к сожалению.

sessionInfo() 
R version 3.1.1 (2014-07-10) 
Platform: i386-w64-mingw32/i386 (32-bit) 

locale: 
[1] LC_COLLATE=English_New Zealand.1252 LC_CTYPE=English_New Zealand.1252 LC_MONETARY=English_New Zealand.1252 
[4] LC_NUMERIC=C       LC_TIME=English_New Zealand.1252  

attached base packages: 
[1] stats  graphics grDevices utils  datasets methods base  

loaded via a namespace (and not attached): 
[1] data.table_1.9.2 plyr_1.8.1  Rcpp_0.11.3  reshape2_1.4  stringr_0.6.2 tools_3.1.1  
+0

Тьфу, установил ее, пытаясь смутное 'mode' аргумент. – nacnudus

+0

"неясным"? 'help (" download.file ")' является тайной командой? – hrbrmstr

+0

Неясным, потому что вы не потрудились бы с 'mode', если вы как-то уже не знаете, что исходный файл не поврежден, символы окончания строки различаются между UNIX и окнами, что FTP пытается автоматически их исправить и что FTP ошибочно полагает в случае текстового файла, хранящегося в двоичном формате, на сервере UNIX, который переносится на компьютер Windows. – nacnudus

ответ

Смежные вопросы