Как добавить документацию в data.frame в R?

Я использую R некоторое время и понял, что было бы очень полезно, если бы вы могли прикрепить данные описания, содержащиеся в data.frame, потому что вы могли бы собрать всю полезную исследовательскую информацию в файле .Rdata.

Я хочу добавить к моему фрейму данных информацию, подобную той, которая отображается? iris (описывая данные в фрейме данных iris)

Однако я не могу найти способ сделать это.


person cyague    schedule 27.10.2011    source источник
comment
См. приведенные здесь ответы, я считаю, что они должны одинаково хорошо работать и для data.frames: ="соглашения о комментировании функций в r">stackoverflow.com/questions/6324568/   -  person Chase    schedule 27.10.2011


Ответы (3)


У @Spacedman есть хороший общий ответ на такие вещи.

Если вы хотите чего-то более необычного, вы можете попробовать 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() и units() из пакета Hmisc предоставляют механизмы для документирования отдельных столбцов в data.frames. contents() в том же пакете суммирует все эти атрибуты, которые вы прикрепили к data.frame.

person Josh O'Brien    schedule 27.10.2011
comment
comment находится в пакете base, а не Hmisc. - person Richie Cotton; 27.10.2011
comment
@RichieCotton - Спасибо, что указали на это. Думаю, было бы несправедливо предполагать, что, поскольку comment всегда доступен после присоединения Hmisc ... значит, он предоставляется Hmisc ;) - person Josh O'Brien; 27.10.2011

Вы можете добавить его как произвольный атрибут:

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

Эти вещи в основном сохраняются путем нарезки n подмножеств, но некоторые процессы их удаляют. Такова природа системы передачи по значению.

В CRAN может быть даже пакет для более сложных метаданных в виде атрибутов с некоторыми функциями-оболочками, но под всеми его атрибутами...

person Spacedman    schedule 27.10.2011

Другой возможностью было бы превратить ваш df в объект формального класса (s4, ссылочный класс) с двумя полями - скажем, «данные» (ваш df) и «информация» (строка символов с описанием)

См., например, ?setRefClass

person Rappster    schedule 27.10.2011