2.1.1. Csomag tartalma

A csomag.tartalom() függvény az argumentumban megadott csomag objektumainak számát listázza az obkejtumok osztályai szerint. Így képet kaphatunk a csomag összetételéről: milyen típusú objektumokból hány darab található a csomagban. A függvény definíciója a következő:

###########################################################################
# A csomag.tartalom() függvény
#
# Bemenő paraméter: 
#     csomag - a számítógépen telepített csomag
# Visszetérési érték: 
#     táblázat, amely a csomag objektumainak osztály-típus eloszlását adja
#
csomag.tartalom <- function(csomag) {
  # csomag betöltese
    eval(parse(text=paste("library(",csomag, ")",sep=""))) 

    # objektumnevek lekérdezése  
    eval(parse(text=paste("obj <- ls('package:", csomag,"')", sep=""))) 

    out <- character(length(obj))
    j <- 1
    for (i in obj) {
        o <- parse(text=paste("class(`", i, "`)[1]", sep=""))
       out[j] <- eval(o)
       j <- j+1
    }
    return(as.matrix(table(factor(out))))
}

A csomag.tartalom() függvény használatára mutatunk néhány példát.

csomag.tartalom("base")
                [,1]
character          5
function        1152
list               1
logical            2
numeric            3
simple.list        2
standardGeneric    5
csomag.tartalom("utils")
             [,1]
character       1
function      224
matrix          1
SweaveSyntax    2
csomag.tartalom("datasets")
               [,1]
array             1
character         2
data.frame       38
dist              1
factor            2
list              4
matrix            8
mts               2
nfnGroupedData    6
numeric           6
table             5
ts               28