要查看R中包中的所有内容(而不仅仅是对象)

B C*_*hen 9 r

这可能是一个新手的问​​题,但我认为我做了我的作业,但还没有找到答案(我希望找到),所以我在这里张贴它寻求一些帮助.

之前提出过类似的问题,但是从我发现的问题来看,除了"昂贵的"解决方案之外,没有任何答案可以帮助我解决当前问题,这需要R的编辑.

我了解到lsobjects允许我们查看包中的对象.但即便如此ls(all.names=TRUE),我仍然看不到所有的内容.有人建议,ls(getNAMEspace)但这对我来说还不够"好".

例如

>search()
[1]".GlobalEvn"      "package:TCGAGBM"
>ls("package:TCGAGBM")
character(0)
>ls(getNamespace("TCGAGBM"),all.names=TRUE)
[1]"._NAMESPACE_."   "._S3MethodsTable_."  ".packageName"
Run Code Online (Sandbox Code Playgroud)

但是,在C(cmd)下,我看到以下内容

C:\ Users\XYZ\Documents\R\R-2.15.1\library\TCGAGBM... data extdata ......(共3个文件,7个Dir(s))

当我看到下面的脚本行时,我遇到了这种"差异" -

>clinical=read.delim(system.file(
+"extdata/Clinical/clinical_patient_public_GBM.txt.gz",
+package="TCGAGBM"), header=TRUE)
Run Code Online (Sandbox Code Playgroud)

因此,我想知道在R下是否有办法查看包中的所有内容,以便我们"知道"如何更好地利用包.Vignette可能会有所帮助,但是由于我迄今为止对R的经验有限,我发现有些软件包没有附带Vignette.

任何评论将不胜感激,以帮助我了解更多关于R.

Dir*_*tel 5

My preferred approach by far is to simply look at the source code of a package in question.

In fact, I actually do that pretty often as running CRANberries creates a local CRAN mirror as a side effect. But even if you don't, CRAN packages really are only a quick download away and will come with comments in the source which the parsed code excludes.

Edit: I just found what Ben found too: Sean Davis' page at http://watson.nci.nih.gov/~sdavis/tutorials/TCGA_data_integration/ -- looks like it uses some BioC packages too. I would still study the source which often has more comments, annotations, extras, ... than the installed package. But maybe that's just my preference. YMMV as they say.


Mai*_*ura 5

这是探索任何软件包功能的另一种方法。尽管它不像Dirk的解决方案那样全面,但仍然有用。当我想了解软件包的所有功能时,我会快速列出其所有功能。然后,如果我对任何功能感到好奇,那么我会迅速拉起帮助文件?function_name并查看其功能。因此,我将此函数保留在自己的函数中,.rprofile以便在每次运行时自动加载该函数R

lsp <- function (package, all.names = FALSE, pattern) {
    package <- deparse(substitute(package))
    ls(pos = paste("package", package, sep = ":"), all.names = all.names, 
        pattern = pattern)
}
Run Code Online (Sandbox Code Playgroud)

当我知道函数的部分名称及其所属的包,但很快需要找到它时,这特别有用。

例如

> lsp(ggplot2, pattern = "geom")
 [1] "geom_abline"          "geom_area"           
 [3] "geom_bar"             "geom_bin2d"          
 [5] "geom_blank"           "geom_boxplot"        
 [7] "geom_contour"         "geom_crossbar"       
 [9] "geom_density"         "geom_density2d"      
[11] "geom_dotplot"         "geom_errorbar"       
[13] "geom_errorbarh"       "geom_freqpoly"       
[15] "geom_hex"             "geom_histogram"      
[17] "geom_hline"           "geom_jitter"         
[19] "geom_line"            "geom_linerange"      
[21] "geom_map"             "geom_path"           
[23] "geom_point"           "geom_pointrange"     
[25] "geom_polygon"         "geom_quantile"       
[27] "geom_raster"          "geom_rect"           
[29] "geom_ribbon"          "geom_rug"            
[31] "geom_segment"         "geom_smooth"         
[33] "geom_step"            "geom_text"           
[35] "geom_tile"            "geom_violin"         
[37] "geom_vline"           "update_geom_defaults"
Run Code Online (Sandbox Code Playgroud)