Mam pliku .csv, który zawiera następujące dane:nie można odczytać unicode csv do R
"Ա","Բ"
1,10
2,20
nie mogę czytać w R tak, że nazwy kolumn są wyświetlane jak są one w pliku.
d <- read.csv("./Data/1.csv", fileEncoding="UTF-8")
head(d)
wywołuje następujące:
> d <- read.csv("./Data/1.csv", fileEncoding="UTF-8")
Warning messages:
1: In read.table(file = file, header = header, sep = sep, quote = quote, :
invalid input found on input connection './Data/1.csv'
2: In read.table(file = file, header = header, sep = sep, quote = quote, :
incomplete final line found by readTableHeader on './Data/1.csv'
> head(d)
[1] X.
<0 rows> (or 0-length row.names)
Tymczasem robi to samo bez podania fileencoding produkuje to:
> d <- read.csv("./Data/1.csv")
> head(d)
Ô. Ô²
1 1 10
2 2 20
Kiedy uruchomić "plik" narzędzie, aby dowiedzieć się kodowanie pliku, jest napisane, że jest UTF-8:
Data\1.csv: UTF-8 Unicode text, with CRLF line terminators
Używam programów RStudio, Windows 7, R w wersji 2.15.2, 32-bitowych.
Z góry dziękuję.
Działa idealnie dla mnie z R 2.15.3 na Linux. (Drugie ostrzeżenie to prawdopodobnie brakujący "enter" w ostatnim wierszu pliku) – Spacedman
Mogę replikować problem. Nigdy nie użyłem tych paramów, ale użycie 'kodowania' zamiast, to znaczy' read.csv (..., encoding = "UTF-8") 'czyta w pliku, ale nagłówek nie jest pokazywany jako litery, ale jako' XUFEFF..U.0531. X.U.0532 "zamiast tego. – eddi
obserwacja: '> a =" Ա "; > a; [1] "Ա" 'działa poprawnie, ale to nie robi:' data.frame (a); # a # 1 ' – eddi