Как выучить R как язык программирования
Я хотел бы знать, как выучить язык R как "язык программирования", а не изучать его как статистическую систему. Мой вопрос вызван отсутствием понимания таких функций, как parse, eval и т.д., Которые могут не часто встречаться пользователем R с убеждением "статистики".
Изменить: Я изучал такие инструменты, как Rpy RSPerl rJava, и хочу (по крайней мере) уметь понимать концепции, которые облегчают связь R с другими языками программирования.
Доступность веб-приложений для R (R-PHP, RApache и т.д.) является еще одним фактором мотивации для меня, чтобы получить более глубокое, более структурное понимание R.
И последнее, но не менее важное: я хотел бы писать R-пакеты, для которых такое понимание было бы полезным, если это не было необходимо.
Ответы
Ответ 1
Для начала, вы можете посмотреть на эту статью Джона Кука. Также убедитесь, что вы читаете "The R Inferno".
На домашней странице R есть много хороших ресурсов, но, в частности, прочитайте "Введение в R" и "Определение языка R".
Некоторые очень тесно связанные вопросы stackoverflow:
Моя любимая книга на эту тему: "Программное обеспечение для анализа данных: программирование на R", создатель языка S. Джон Чамберс.
![cda_displayimage.jpg?SGWID=0-0-16-402507-0]()
Ответ 2
Хорошая книга для изучения R-as-a-programming-language (в отличие от R-for-statistics) Искусство программирования R, Норман Матлофф.
![enter image description here]()
Это очень читаемо, не предполагает, что вы компьютерный ученый, и довольно недорого, как книги R.
Ответ 3
Я предпочел бы хороший и всесторонний старт, например, The R Book Майкла Кроули. Это легко читаемая и полная книга по основным функциям R, со статистическими советами и несколькими упражнениями. Он много фокусируется на силе R (например, линейных моделях) и дает также полезные трюки для кодирования. Это очень помогло мне, когда я боролся с загадочными онлайн-курсами.
![alt text]()
Ответ 4
Я очень практический ученик, поэтому этот совет может быть специфическим для моего стиля обучения. Я бы предположил, что лучшее место для начала "обучения программированию" на любом языке предполагает поиск проблем за пределами вашего обычного диапазона опыта, а затем их попытки решить с помощью языка программирования.
Проекты, которые учили меня больше всего о том, как программировать с помощью R
, никак не связаны со статистикой.
Знание таких функций, как parse()
и eval()
, ни в коем случае не является мерой для того, чтобы быть "хорошим программистом R". Приложения, требующие интенсивного использования этих функций, не составляют большую часть проблемного пространства, в которое вы можете применить R
. Вместо этого, я думаю, вы должны стараться быть "хорошим программистом", который знает R
. Это включает в себя уточнение ваших подходов к решению проблем.
Программирование не является спортом для зрителей. Хорошая книга незаменима как ссылка на доступные инструменты, но вам нужно найти некоторые проблемы, с помощью которых можно оттачивать свои навыки.