Я использовал в SAS
течение 15 лет, и начал использовать R
серьезно последние 6 месяцев, с некоторыми возиться в нем на пару лет вперед. С точки зрения программирования, осуществляет R
ли манипулирование данными напрямую, нет эквивалента DATA
или PROC SQL
процедур, потому что они не нужны (последний более эффективен, SAS
когда требуется много манипуляций с данными из внешних источников данных, например административных данных). Это означает, что теперь я понимаю, что манипулирование данными происходит быстрее R
и требует гораздо меньше кода.
Основная проблема, с которой я столкнулся, - это память. Не все пакеты R допускают WEIGHT
спецификации типов, поэтому, если у вас есть SAS
наборы данных с переменными, используемыми в выражениях FREQ
или REPLICATE
, у вас могут возникнуть проблемы. Я посмотрел на ff
и bigmemory
пакетов в R , но они не появляются , чтобы быть совместимым со всеми пакетами R, поэтому если у вас есть очень большие наборы данных , которые требуют анализа, которые относительно редко, и были объединены, могут возникнуть проблемы с памятью.
Для автоматизации, если у вас есть, SAS macros
вы должны быть в состоянии запрограммировать эквивалент в R
и запустить как пакетный.
Для кодирования R
я использовал Notepad++
и установил язык R
, а теперь открываю радости R Studio
. Оба эти продукта бесплатны и делают разметку языка как улучшенный SAS
синтаксис GUI (я только когда-либо использовал экран синтаксиса в SAS
).
Существует веб-сайт и соответствующая книга для людей, которые меняются с SAS
на R
. Я нашел их полезными для того, чтобы попытаться понять, как перевести некоторые SAS
команды в R
.
Обновление: одна вещь , которая отвезла меня орехи , когда подходит к R
, что R
не берет на себя все это набор данных ( data frame
в R
просторечии), потому что это не статистический пакет таким образом , что SAS
, SPSS
, Stata
, и т.д.. Так, например, мне потребовалось некоторое время, чтобы заставить if
операторы работать, потому что я продолжал получать помощь для if
операторов с векторами (или, возможно, матрицами), тогда как мне нужно было if
оператор, который работал с data frames
. Таким образом, страницы справки, вероятно, нужно читать более внимательно, чем обычно, потому что вам нужно проверить, что команда, которую вы хотите выполнить, будет работать с вашим типом объекта данных.
То, что до сих пор сводит меня с ума, когда я изучаю новую R
команду (например, метод анализа в предоставленном пакете), заключается в том, что справка по командам часто не является полностью автономной. Я пойду на страницу справки, чтобы попытаться выучить команду, и в ней часто ...
содержатся замечания по использованию . Иногда пытаясь понять, что может или должно пойти туда, куда ...
ведет меня в рекурсивный цикл. Относительная краткость справочных заметок, из SAS
которых приводятся подробные примеры синтаксиса и рабочие примеры с объяснением исследования на этом примере, была довольно большим шоком.