2010-06-02 3 views
9

R пользователям рекомендуется загружать пакеты R и R из локальных зеркал CRAN. Но некоторые из них устарели. Есть ли простой способ проверить, устарел ли репозиторий? Любая функция в R, которая делает это?Как проверить, устарело ли зеркало CRAN?

ответ

6

Одним из способов является просмотр $ CRANMIRROR/src/contrib и сортировка по дате (путем двойного щелчка по дате), чтобы вы могли сравнить последний пакет на зеркале относительно того, что несет главный хост.

Кроме того, вы можете использовать само R и точку available.packages() как у мастера, так и у зеркала - если результирующие наборы различны, может возникнуть проблема (или вы нажмете точку между основным обновлением и зеркалированием).

Вот краткий пример:

> main <- available.packages("http://cran.r-project.org/src/contrib", 
+       method="wget") 
> usmirror <- available.packages("http://cran.us.r-project.org/src/contrib", 
+        method="wget") 
> nrow(main) 
[1] 2381 
> nrow(usmirror)     ## so the US mirror is 2 packages behind 
[1] 2379 
> setdiff(rownames(main), rownames(usmirror))  
[1] "ProbForecastGOP" "semPLS" ## and these are the two 
> 
+0

Хорошо. Наличие того же количества пакетов, что и основной сайт, не означает, что зеркало обновлено, но, по крайней мере, не очень устарело. – ggg