2011-10-27 20 views
29

Utilizzo R da un po 'e mi sono reso conto che sarebbe stato di grande aiuto se fosse possibile allegare una descrizione dei dati contenuti in data.frame, perché si potevano raccogliere tutte le informazioni utili sulla ricerca in un file .Rdata.Come aggiungere documentazione a un data.frame in R?

voglio aggiungere al mio informazioni dataframe come quello mostrato dal? Iris (che descrivono i dati nel iride dataframe)

Tuttavia non riesco a trovare un modo per farlo.

+1

Vedi le risposte fornite qui, dovrebbe funzionare altrettanto bene per data.frames anch'io credo: http://stackoverflow.com/questions/6324568/function-commenting-conventions-in-r/ 6324618 # 6324618 – Chase

risposta

19

È possibile aggiungere come un attributo arbitrario:

attr(df,"doc") = "This is my documentation" 

Queste cose sono per lo più conservati tagliando n subsetting, ma alcuni processi li lascerà cadere. Tale è la natura di un sistema pass-by-value.

Ci può essere anche un pacchetto su CRAN per i metadati più complessa in quanto gli attributi con alcune funzioni wrapper, ma sotto la sua tutti gli attributi ...

23

@Spacedman ha la buona risposta per questo genere di cose.

Se desideri qualcosa di un po 'più elaborato, puoi provare lo comment().

comment(iris) <- 
"  This famous (Fisher's or Anderson's) iris data set gives the 
measurements in centimeters of the variables sepal length and 
width and petal length and width, respectively, for 50 flowers 
from each of 3 species of iris. The species are _Iris setosa_, 
_versicolor_, and _virginica_.\n" 

cat(comment(iris)) 
# This famous (Fisher's or Anderson's) iris data set gives the 
# measurements in centimeters of the variables sepal length and 
# width and petal length and width, respectively, for 50 flowers 
# from each of 3 species of iris. The species are _Iris setosa_, 
# _versicolor_, and _virginica_. 

label() e units() dalla nel pacchetto Hmisc prevedono meccanismi per documentare singole colonne in data.frames. contents(), nello stesso pacchetto riepiloga uno di questi attributi che hai allegato a data.frame.

+0

'comment' è nel pacchetto' base', non 'Hmisc'. –

+1

@RichieCotton - Grazie per avermelo fatto notare. Suppongo che non fosse giusto supporre che poiché 'commento' è sempre _available_ dopo aver allegato' Hmisc' ... che è quindi _provided_ di 'Hmisc';) –

2

Un'altra possibilità potrebbe essere quella di trasformare il vostro df in un oggetto di una classe formale (s4, classe di riferimento) con due campi - dire "dati" (il vostro df) e "info" (stringa di caratteri con la descrizione)

?

Vedere setRefClass, ad esempio

Problemi correlati