Когда я преподавал статистику на уровне выпускников, я говорил своим студентам: «Мне все равно, какой пакет вы используете, и вы можете использовать что угодно для домашней работы, поскольку я ожидаю, что вы предоставите содержательные объяснения, и сниму очки, если я видеть tr23y5m
имена переменных в ваших представлениях. Я могу очень хорошо поддержать ваше обучение в Stata и достаточно хорошо в R. В SAS вы сами по себе, так как утверждаете, что прошли курс обучения. С SPSS или Minitab, благослови вас Бог ». Я думаю, что разумные работодатели будут думать так же. Важна ваша производительность с точки зрения результатов проекта. Если вы можете достичь цели в R с 40 часами работы, хорошо; если Вы можете достичь этого в C ++ за 40 часов работы, хорошо, если вы знаете, как сделать это в R за 40 часов, но ваш супервайзер хочет, чтобы вы делали это в SAS, и вам нужно потратить 60 часов, чтобы изучить некоторые основы и куда идут точки с запятой, это может быть разумно только в контексте большой картины остального кода, находящегося в SAS ... и тогда менеджер не был очень мудрым, наняв программиста на R.
С этой точки зрения общей стоимости, «свободный» R - чрезвычайно раздутый миф. Любой серьезный проект требует специального кода, если только для ввода данных и форматирования вывода, и это ненулевая стоимость профессионального времени. Если для ввода и форматирования этих данных требуется 10 часов кода SAS и 20 часов кода R, то , как сказал бы экономист , R - это более дорогое программное обеспечение с минимальными затратами , т. Е. С точки зрения дополнительных затрат на создание данной части функциональности. , Если крупный проект требует 200 часов времени программиста R и 100 часов времени программиста Stata для обеспечения идентичной функциональности, Stata в целом дешевлеДаже с учетом лицензии за $ 1K, которую вам нужно купить. Было бы интересно увидеть такие прямые сравнения; Я принимал участие в переписывании огромного беспорядка в 2 Мб кода SPSS, который, как говорили, накапливался в течение 10 человеко-лет в ~ 150 КБ кода Stata, который работал примерно так же быстро, может быть немного быстрее; это был проект на 1 человеко-год. Я не знаю, является ли это соотношение эффективности 10: 1 типичным для сравнения SPSS: Stata, но я не удивлюсь, если это так. Для меня работа с R - это всегда большие расходы из-за затрат на поиск: я должен определить, какой из пяти пакетов с похожими именами делает то, что мне нужно, и оценить, достаточно ли он надежен, чтобы я мог использовать его в моя работа. Это часто означает, что для меня дешевле написать свой собственный код Stata за меньшее время, чем я бы потратил, выясняя, как заставить R работать в данной задаче. Следует понимать, что это моя личная особенность; большинство людей на этом сайте лучше, чем я.
Забавно, что ваш профессор предпочел бы Stata или GAUSS, а не R, потому что "R не был написан экономистами". Ни были Stata или GAUSS; они написаны программистами, используя инструменты компьютерных специалистов. Если ваш профессор получает идеи о программировании от CodeAcademy.com, это лучше, чем ничего, но разработка программного обеспечения профессионального уровня отличается от ввода текста в текстовом поле CodeAcademy.com, так как вождение грузового автомобиля отличается от езды на велосипеде. (Хотя Stata была основана специалистом по компьютерам, работавшим эконометристом-экономистом, но он не занимался этой эконометрикой уже около 25 лет).
Обновление : Как прокомментировал AndyW ниже, вы можете написать ужасный код на любом языке. Тогда возникает вопрос стоимости, какой язык легче отлаживать. Для меня это выглядит как сочетание того, насколько точным и информативным является вывод, насколько простым и прозрачным является сам синтаксис, и у меня, конечно, нет на это хорошего ответа. Например, Python применяет отступ кода, что является хорошей идеей. Код Stata и R можно заключить в скобки, и это не сработает с SAS. Использование подпрограмм является обоюдоострым мечом: использование *apply()
with-ad-hoc function
в R, очевидно, очень эффективно, но сложнее в отладке. Аналогичным образом Stata local
может маскировать практически все, и, по умолчанию, пустая строка, хотя и полезна, может также привести к трудным для обнаружения ошибкам.