Введение: R
это программный инструмент с открытым исходным кодом для статистического анализа и построения графиков, который активно используется в различных научных дисциплинах и становится все более и более популярным (хотя во многих областях он уже достаточно популярен). Помимо базовой версии люди отовсюду разрабатывают так называемые пакеты, загружают их, например, в CRAN, откуда их можно свободно скачать для использования.
В: Я пишу рукопись для рецензируемого психологического журнала и использую R
в своей работе множество пакетов. Конечно, я хочу и буду цитировать R
себя и пакеты, на которые я сильно полагался (например, для моделирования или анализа данных). Однако у меня также есть несколько пакетов, из которых я использовал только одну маленькую функцию. Например, я использовал odd
функцию из gtools
пакета, чтобы определить, является ли целое число нечетным или четным. Насколько я вижу, функция состоит всего из одной строки, и я мог бы написать ее сам (но не стал!). С одной стороны, я хочу отдать должное этим разработчикам, с другой стороны, я не хочу раздувать свой список литературы и путать читателей. Итак, вопрос в том, должен ли я цитировать каждый R
пакет, который я использовал?
Кстати: обратите внимание, что R
у него есть хорошая функция citation("some package")
для доступа к информации о цитировании, предоставленной авторами пакета; см. также citation()
цитировать R
себя.
В целом, я бы посоветовал вам ошибиться и указать слишком много пакетов (с номерами версий, пожалуйста!), хотя odd
вполне вероятно, что это пограничный случай. Я бы рационализировал эту тенденцию как баланс для всех людей, которые широко используют пакеты, но не цитируют их.
В общем, я бы, конечно, привел все, что сэкономило мне нетривиальный объем собственной работы (например, «Я мог бы сделать это сам, но это, вероятно, стоило бы мне полдня»).
Длина вашего списка литературы не должна вызывать беспокойства во времена публикации в формате PDF. И «мы использовали R [3], пакеты foo [4] и bar [5], а также несколько вспомогательных функций [6-10]» не должно сбивать с толку ваших читателей.
ДА.
Есть много причин, и нет причин не делать этого (если только вы не находитесь в каком-то странном ограничении пространства/чернил).
Вот важная и недооцененная причина:
Большинство людей, которые создают различные пакеты R, на самом деле люди, которые создали сам R, являются другими учеными . Значение: им не платили конкретно за время, которое они потратили на создание lme4, ggplot2, stargazer и т. д. Разработка программного обеспечения очень недооценивается в академических кругах. Представьте, что вы тратите много времени на написание и поддержку пакета, которым пользуются тысячи людей в вашей области, а затем комитет по продвижению по службе спрашивает вас, почему вы не написали больше статей или не провели больше экспериментов. Очень трудно заставить кого-то, кто не является пользователем (или даже человеком, ориентированным на программное обеспечение), правильно оценить время и навыки, затраченные на создание хорошего программного обеспечения.
Единственный способ убедить университетские системы и лидеров в том, что работа, которую вы потратили на написание этого программного обеспечения, — это показать их так, как они понимают, то есть с помощью цитат . Их не будет волновать ваша репутация Stack Exchange или сколько у вас сока на GitHub, им нужно что-то, что Scopus может вычислить, и они могут перечислить и подсчитать.
Большая часть разработок научных кругов основана на бобах.. Большая часть усилий в университетах посвящена подсчету этих бобов и управлению ими. Сколько студентов в вашей программе, сколько грантов присуждено, сколько докторов наук. защита, а также количество опубликованных и цитируемых статей — все это очень важные компоненты, от которых зависит, кто получит ресурсы. Было бы действительно грустно, если бы кто-то, написавший полезный пакет R, не получил должного признания и, таким образом, не получил бы разрешения на создание более замечательных инструментов. Представьте, что если бы Хэдли не начал работать в R-Studio, он мог бы когда-нибудь стоять перед каким-нибудь комитетом и спрашивать его, почему он тратил столько времени на написание «программ», а не «документов», или пытаться объяснить, почему он не может этого сделать. взять третий курс в этом семестре, потому что заведующий кафедрой не понимает, что написание программного обеспечения — это то, что на самом деле требует реального времени.
Также учтите следующее: большинство научных статей цитируется менее 10 раз, если вообще цитируется. Достаточно полезный пакет R, вероятно, повлияет на гораздо большее количество людей, чем любая «настоящая» публикация, но этот человек не получит признания, если вы не процитируете его.
Абсолютно! Цитаты бесплатны, и они являются благословением для создателей этих пакетов. Если вы не ограничены строгим лимитом страниц, нет причин не иметь раздел «методы», в котором вы перечисляете все пакеты, которые вы использовали. Это может быть одно предложение. Если вы хотите уделить почетное место нескольким ключевым пакетам, на которые опиралась ваша работа, дайте каждому из них по предложению, но не пренебрегайте остальными. Когда-нибудь вы будете счастливы, когда другие будут цитировать вашу работу.
На этот вопрос нет однозначного ответа, но вот что я делаю.
Хорошо, я понимаю, что этой теме 6 лет. Так что извините, что раскопал. Впрочем, может быть, моя рутина поможет и кому-то еще.
Обычно я делаю это примерно так же, как Сверре, и цитирую в основной статье R и наиболее важные пакеты для своих анализов. Однако дополнительно я привожу все пакеты в виде таблицы в приложении с 4 столбцами ( имя пакета , версия , сопровождающий , цитирование ).
Вот небольшой, но полезный фрагмент для этой цели. Он создает data.frame с 3 из 4 упомянутых столбцов и файл .bib с необходимыми цитатами. Для завершения работы над приложением по-прежнему требуется некоторая ручная работа (например, копирование таблицы .csv в программу Word/Text и импорт .bib в инструмент управления цитированием).
Фрагмент по-прежнему экономит мне много времени.
# Export Citations as Bibtex (.bib)
write_bib(file="Bibliography of packages.bib")
# Table (.csv) with all information on the packages
appendix_packages <- data.frame(Packagename = character(),
Version = character(),
Maintainer = character())
require(pacman)
for (pkg in p_loaded()){
appendix_packages <- appendix_packages %>% add_row(
Packagename = pkg,
Version = as.character(packageVersion(pkg)),
Maintainer = maintainer(pkg)
)
}
write.csv(x = appendix_packages, file = "List_of_packages.csv", row.names = F)
Раскрытие информации Я являюсь сопровождающим datscience
R-пакета. Поскольку я так часто использовал эту функцию, я также включил ее Rcitation_appendix()
в пакет datscience: Documentation Website , Code
Usage:
library(datscience)
library(lavaan)
Rcitation_appendix(filename="Appendix A - All R packages utilized.docx")
Это создает папку с именем «Appendix» в текущем каталоге и помещает в нее два файла: файл слова .docx с таблицей и файл .bib для вашего менеджера ссылок. Позже я вручную ввожу ссылки в самый правый столбец (Цитирование)
Микко
Джеймс
toLatex(sessionInfo())
дает вам все, что вам нужно, чтобы люди могли воспроизвести вашу среду.фониксор
Орион