2017-10-03 3 views
0

Je mettais des fichiers ensemble en utilisant le code suivant:Comment savoir quels paquets interférent avec les autres?

data_path <- "daymet" 
files <- dir(data_path, pattern = "*.csv") 

daymet <- data_frame(filename = files) %>% 
    mutate(file_contents = map(filename, ~ read_csv(file.path(data_path, .), 
    skip=7)))%>% 
    unnest()%>% 
    mutate(site = str_sub(filename, 1, 3)) 

Au début, j'ai eu quelques problèmes avec l'erreur « « GAJPCSR1_2003_2011.csvMapEnv » est pas un objet exporté de « espaces de noms: cartes » ». J'ai réinstallé purrr. Erreur disparue, tout a fonctionné!

Je suis allé le remettre avec le reste de mon analyse, effacé mon environnement, et quand R est arrivé à ce morceau, le même message d'erreur est revenu.

J'ai tous ces autres paquets en cours, donc il semble que l'un d'eux ne fonctionne pas bien avec purrr. Ou peut être pas. Même si je ne charge pas tous les paquets, je reçois toujours le même message d'erreur.

Session Info:

R version 3.3.2 (2016-10-31) 
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 
[3] LC_MONETARY=English_United States.1252 LC_NUMERIC=C       
[5] LC_TIME=English_United States.1252  

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

other attached packages: 
[1] reprex_0.1.1 mapdata_2.2-6 maps_3.2.0  ggmap_2.6.1  soilDB_1.8.5 aqp_1.10  
[7] stringr_1.1.0 modelr_0.1.0 lubridate_1.6.0 dplyr_0.5.0  purrr_0.2.3  readr_1.0.0  
[13] tidyr_0.6.1  tibble_1.2  ggplot2_2.2.1 tidyverse_1.1.1 

loaded via a namespace (and not attached): 
[1] httr_1.2.1   jsonlite_1.5  splines_3.3.2  Formula_1.2-1  
[5] assertthat_0.2.0 sp_1.2-5   latticeExtra_0.6-28 backports_1.0.5  
[9] lattice_0.20-34  digest_0.6.12  RColorBrewer_1.1-2 checkmate_1.8.2  
[13] rvest_0.3.2   colorspace_1.3-2 htmltools_0.3.5  Matrix_1.2-7.1  
[17] plyr_1.8.4   psych_1.6.12  devtools_1.12.0  clipr_0.3.3   
[21] XML_3.98-1.8  broom_0.4.2   raster_2.5-8  haven_1.0.0   
[25] scales_0.4.1  whisker_0.3-2  jpeg_0.1-8   htmlTable_1.9  
[29] withr_1.0.2   nnet_7.3-12   lazyeval_0.2.0  mnormt_1.5-5  
[33] proto_1.0.0   survival_2.41-3  magrittr_1.5  readxl_0.1.1  
[37] evaluate_0.10  memoise_1.0.0  nlme_3.1-131  MASS_7.3-45   
[41] forcats_0.2.0  xml2_1.1.1   foreign_0.8-67  tools_3.3.2   
[45] data.table_1.10.4 hms_0.3    geosphere_1.5-5  RgoogleMaps_1.4.1 
[49] munsell_0.4.3  cluster_2.0.5  plotrix_3.6-4  callr_1.0.0   
[53] rlang_0.1.2   grid_3.3.2   rjson_0.2.15  htmlwidgets_0.8  
[57] rmarkdown_1.5  labeling_0.3  base64enc_0.1-3  gtable_0.2.0  
[61] DBI_0.5-1   reshape_0.8.6  reshape2_1.4.2  R6_2.2.0   
[65] gridExtra_2.2.1  knitr_1.17   rprojroot_1.2  Hmisc_4.0-3   
[69] stringi_1.1.2  parallel_3.3.2  Rcpp_0.12.10  mapproj_1.2-4  
[73] rpart_4.1-10  acepack_1.4.1  png_0.1-7   
+0

comprennent peut-être la sortie de 'sessionInfo()'? – Jaap

+0

Vérifiez 'conflicts()' pour voir si les variables sont définies dans deux environnements différents. – MrFlick

+0

Je suppose que les deux paquets 'maps' et' purrr' ont une fonction appelée 'map()'. vous devrez faire attention en les chargeant - le dernier est celui par défaut. Utilisez les noms complets pour être spécifique 'maps :: map()' ou 'purrr: map()' – MrFlick

Répondre

2

Vous pouvez voir tout ce qui est cache ou être masqué par

conflicts(detail = TRUE) 

Par exemple, dans ma session en cours de R, vous pouvez voir ci-dessous que j'ai répondais questions sur SO à cause de tous les noms de données génériques dans l'environnement global, df, dt, et t masquant les fonctions de base du même nom. Et vous pouvez voir first et last de table de données masquant les versions dplyr, parce que je chargé data.table après dplyr:

> conflicts(detail = T) 
$.GlobalEnv 
[1] "n"  "df" "dt" "gamma" "t"  

$`package:stringr` 
[1] "%>%" 

$`package:data.table` 
[1] "between" "first" "last" 

$`package:dplyr` 
[1] "%>%"  "between" "first"  "last"  "n"   "filter" "lag"  
[8] "intersect" "setdiff" "setequal" "union"  

$`package:ggplot2` 
[1] "Position" 

$`package:stats` 
[1] "df"  "dt"  "filter" "lag" 

$`package:methods` 
[1] "body<-" "kronecker" 

$`package:base` 
[1] "body<-" "gamma"  "intersect" "kronecker" "Position" "setdiff" "setequal" 
[8] "t"   "union"