Подтвердить что ты не робот

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

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

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

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

4b9b3361

Ответ 1

@Spacedman имеет хороший общий ответ для такого рода вещей.

Если вам понравится что-то немного интересное, вы можете попробовать comment().

 comment(iris) <- 
 "     This famous (Fisher 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 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.

Ответ 2

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

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

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

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

Ответ 3

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

Смотрите? setRefClass, например