RODBC jest główną biblioteką w R do importowania danych z bazy danych do R. RODBC
wydaje się mieć zdolność "odgadnięcia" typu danych kolumny, które uważam za szczególnie denerwujący.denerwujące "funkcja" (lub błędy?) Dla RODBC
Przesłałem plik test.xls
here lub można utworzyć plik xls siebie:
- utworzyć 2 kolumny, pierwsza kolumna o nazwie
col_a
a druga kolumna o nazwiecol_b
. - typ co chcesz w
col_a
, Wpisałem litery na tej kolumnie dla 92 rzędów - w 92th rzędu col_b wpisz numer tam wpisałem „1923” bez zmiany typu danych (czyli nie używając
'
) - spróbuj zaimportować plik xls do R za pomocą następującego scenariusza:
library(RODBC)
setwd("C:/Users/hke775/Documents/Enoch/MISC/R_problems/RODBC")
channel <- odbcConnectExcel("test.xls",readOnly=TRUE)
dummy.df <- sqlFetch(channel,"Sheet1")
odbcClose(channel)
Zobaczysz, że w dummy.df
, jest NA
, 1923
w tej kolumnie zniknął.
Jeśli chcesz ponownie zobaczyć 1923
, możesz zmienić pierwszy wiersz numeru col_b
na numer, który powraca ponownie.
To bardzo denerwujące, ponieważ nie chcę ręcznie modyfikować danych. Muszę użyć innego pakietu do importowania plików xls, ale nie mogę znaleźć innych pakietów równie gładkich jak RODBC
(próbowałem gdata
i xlsReadWrite
).
Czy brakowało mi czegokolwiek w komendzie sqlFetch
i powodowało problemy? Dzięki.
Czy jesteś pewien, że wypróbowałeś gdata? Kiedy wypróbowałem twój plik testowy z pakietem gdata używając 'DF <- read.xls (" test.xls ")' działało. "1923" było obecne. –
Gdata musi mieć perla, którego nie mogę zainstalować w moim biurze. – lokheart
Jeśli moce, które mogą zainstalować R, powinny również zainstalować dystrybucję Rtools, ponieważ jest to wymagane do rozwoju R i ma w niej perl: http : //cran.r-project.org/bin/windows/Rtools/ –