2014-11-02 123 views
3

我在我的圖書館有一個包,我不知道它來自哪裏。據推測,它被下載爲我使用的另一個軟件包的依賴項。如何找出哪些包依賴於感興趣的包?如何確定哪些軟件包依賴於R中的給定軟件包?

+2

如果它是一個CRAN包,去那裏,因爲每個包的頁面既具有「依賴和‘反向取決於’列表中提供 – 2014-11-02 11:29:36

+0

@CarlWitthoft,反向依賴在哪裏?我在彙總HTML或參考手冊中看不到它? – CephBirk 2014-11-02 14:29:09

+2

轉到「軟件包」頁面並單擊任意軟件包,這會彈出一個摘要頁面的變體,並在那裏例如,'bvpSolve'頁面列出了「取決於:\t R(≥2.01),rootSolve,deSolve」和「Reverse取決於:\t diffEq」 – 2014-11-02 19:37:32

回答

4

您可以使用installed.packages,其中列出了所有已安裝的軟件包及其依賴關係(作爲矩陣對象)。例如說,你想找到哪些軟件包依賴於rJava

#get my installed packages 
    x<-installed.packages() 
    #find packages dependent on rJava 
    x[grepl("rJava",x[,"Depends"]),"Package"] 
    #the result for my R installation 
    # XLConnect  xlsx xlsxjars 
    #"XLConnect"  "xlsx" "xlsxjars"