2015-07-21 4 views
0

Я пытаюсь загрузить и загрузить набор данных SAS (.XPT) с веб-сайта National Health and Nutrition Survey Survey (http://wwwn.cdc.gov/nchs/nhanes/search/DataPage.aspx?Component=Questionnaire&CycleBeginYear=2009).Загрузите и загрузите набор данных SAS (.XPT) из онлайн-источника в R

Конкретный набор данных, который меня интересует, это SXQ_F.XPT. Я пробовал 3 метода:

1.Loading его с помощью URL непосредственно в read.xport:

library(foreign) 

mydata <- read.xport("http://wwwn.cdc.gov/Nchs/Nhanes/2009-2010/SXQ_F.XPT") 
Error in lookup.xport(file) : unable to open file: 'Invalid argument' 

2.Using download.file первая:

download.file("http://wwwn.cdc.gov/Nchs/Nhanes/2009-2010/SXQ_F.XPT", "download_SXQ_F.XPT") 
mydata <- read.xport("download_SXQ_F.XPT") 
Error in lookup.xport(file) : file not in SAS transfer format 

3.Manually загрузки набора данных через точку и нажмите, а затем загрузите из wd:

mydata <- read.xport("SXQ_F.XPT") 

SEQN SXD021 SXQ800 SXQ803 SXQ806 SXQ809 SXQ700 
1 51624  1  1  1  1  2  
2 51628  1  NA  NA  NA  NA  
3 51629  1  1  1  1  2  
4 51630  1  NA  NA  NA  NA  
5 51643  1  NA  NA  NA  NA  
6 51645  1  1  2  2  2  

Почему № 3, но не # 2 нет Работа? Как загрузить и загрузить данные, используя только R?

В соответствии с просьбой, вот выход запуска sessionInfo():

R version 3.2.1 (2015-06-18) 
Platform: x86_64-w64-mingw32/x64 (64-bit) 
Running under: Windows 8 x64 (build 9200) 

locale: 
[1] LC_COLLATE=English_United States.1252 LC_CTYPE=English_United States.1252 LC_MONETARY=English_United States.1252 
[4] LC_NUMERIC=C       LC_TIME=English_United States.1252  

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

other attached packages: 
[1] descr_1.1.1  plyr_1.8.3  weights_0.80 gdata_2.17.0 Hmisc_3.16-0 ggplot2_1.0.1 Formula_1.2-1 survival_2.38-1 
[9] lattice_0.20-31 foreign_0.8-63 sas7bdat_0.5 

loaded via a namespace (and not attached): 
[1] Rcpp_0.11.6   cluster_2.0.1  magrittr_1.5  splines_3.2.1  MASS_7.3-40   munsell_0.4.2  
[7] xtable_1.7-4  colorspace_1.2-6 stringr_1.0.0  tools_3.2.1   nnet_7.3-9   gtable_0.1.2  
[13] latticeExtra_0.6-26 gtools_3.5.0  digest_0.6.8  gridExtra_0.9.1  RColorBrewer_1.1-2 reshape2_1.4.1  
[19] acepack_1.3-3.3  rpart_4.1-9   stringi_0.5-5  scales_0.2.5  proto_0.3-10  
+1

Вариант 2 работает отлично для меня. Вам нужно будет отправить 'sessionInfo()', чтобы получить дополнительную помощь. – MichaelChirico

+0

Добавлены результаты 'sessionInfo()' – r3robertson

+0

У меня есть 'foreign_0.8-65'. Обновите и посмотрите, исправлено ли это. – MichaelChirico

ответ

1

Как было отмечено на R help системы Windows, должны быть обучены более тщательно при использовании download.file определенных файлов; это такой случай.

Добавить mode="wb" в download.file следует сохранить файл в соответствующем формате read.xport.

От ?download.file>mode:

режим, при котором для записи файла. Полезными значениями являются «w», «wb» (двоичный), «a» (добавление) и «ab».

0

Я недавно опубликовал пакет nhanesA на CRAN.

install.packages("nhanesA") 
sxq_f <- nhanes('SXQ_F') ## Imports as data frame 
Смежные вопросы