Qualcuno può aiutare come ottenere l'elenco dei set di dati incorporati e dei relativi pacchetti di dipendenze?Come posso ottenere un elenco di set di dati incorporati in R?
risposta
Ci sono diversi modi per trovare i set di dati inclusi in R:
1: Utilizzando data()
vi darà un elenco dei set di dati di tutti i pacchetti caricati (e non solo quelli del pacchetto datasets
); i dataset sono ordinate per pacchetto
2: Utilizzando data(package = .packages(all.available = TRUE))
vi darà una lista di tutti i set di dati nei pacchetti disponibili sul computer (cioè anche quelli non-caricati)
3: Uso data(package = "packagename")
vi darà i set di dati di quel pacchetto specifico, in modo da data(package = "plyr")
darà i set di dati nel pacchetto
plyr
Se volete sapere in quale pacchetto un dat aset si trova (ad es. la acme
set di dati), si può fare:
dat <- as.data.frame(data(package = .packages(all.available = TRUE))$results)
dat[dat$Item=="acme", c(1,3,4)]
che dà:
Package Item Title
107 boot acme Monthly Excess Returns
ho spesso bisogno di sapere anche quale struttura di set di dati sono disponibili, così ho creato nella mia dataStr
misc package.
dataStr <- function(package="datasets", ...)
{
d <- data(package=package, envir=new.env(), ...)$results[,"Item"]
d <- sapply(strsplit(d, split=" ", fixed=TRUE), "[", 1)
d <- d[order(tolower(d))]
for(x in d){ message(x, ": ", class(get(x))); message(str(get(x)))}
}
dataStr()
Si prega di notare che l'uscita nella console è piuttosto lunga.
Questo è il tipo di uscita:
[...]
warpbreaks: data.frame
'data.frame': 54 obs. of 3 variables:
$ breaks : num 26 30 54 25 70 52 51 26 67 18 ...
$ wool : Factor w/ 2 levels "A","B": 1 1 1 1 1 1 1 1 1 1 ...
$ tension: Factor w/ 3 levels "L","M","H": 1 1 1 1 1 1 1 1 1 2 ...
WorldPhones: matrix
num [1:7, 1:7] 45939 60423 64721 68484 71799 ...
- attr(*, "dimnames")=List of 2
..$ : chr [1:7] "1951" "1956" "1957" "1958" ...
..$ : chr [1:7] "N.Amer" "Europe" "Asia" "S.Amer" ...
WWWusage: ts
Time-Series [1:100] from 1 to 100: 88 84 85 85 84 85 83 85 88 89 ...
Modifica: Per ottenere un output più informativo e usarlo per i pacchetti scaricati o tutti i pacchetti sul percorso di ricerca, si prega di utilizzare la versione on-line rivista con
source("https://raw.githubusercontent.com/brry/berryFunctions/master/R/dataStr.R")
Bello, anche se questo richiede qualche modifica se si desidera che funzioni con altri pacchetti. 'dataStr (" colorspace ") # Errore in get (x): oggetto" USSouthPolygon "non trovato (lo vedo anche se' colorspace :: USSouthPolygon' funziona.) – Frank
Soluzione rapida: prima 'library (colorspace)'. La soluzione migliore ora è online, ma il codice ha impiegato troppo tempo per copypaste qui. https://github.com/brry/berryFunctions/blob/master/R/dataStr.R –
Provate con 'dati()' – akrun
Si potrebbe voler 'ls ("pacchetto: insiemi di dati")' per i nomi di tutti i set di dati "built-in" nel 'datasets' pacchetto. –
Grazie a @akrun ... questo ha funzionato ... data() restituisce i frame di dati dal pacchetto 'dataset' e 'data (package = .packages (all.available = TRUE))' restituisce i datafram integrati da tutti i pacchetti . – mockash