Я дізнався R, але, схоже, компанії набагато більше цікавляться досвідом SAS. Які переваги SAS над R?
Я дізнався R, але, схоже, компанії набагато більше цікавляться досвідом SAS. Які переваги SAS над R?
Відповіді:
Я думаю, що існує декілька питань (у порядку зростання можливої дії):
Особисто я вважаю, що №3 має будь-які законні заслуги, хоча існують підходи до великих даних, розроблені разом з Р. Питання №1 говорять самі за себе. Я думаю, що №2 ігнорує кілька фактів: є деяка перевірка, яка триває з R, багато основних пакетів написані одними з найбільших імен у статистиці, і були проведені дослідження, які порівнюють точність різних статистичних програм & R безумовно, був конкурентоспроможним.
lme4
списку розсилки, який порівнюється з SAS, з'являється досить регулярно. Але неможливо дізнатися, чи варто взагалі проводити такі порівняння. Не маючи доступу до джерела, ми маємо сприймати ті компанії, що їх результати, дійсно, є результатом їх програмного забезпечення. Чесно кажучи, я вважаю за краще мати можливість переглядати програмний код, який я використовую.
Окрім хороших відповідей на даний момент, я додав би фактор збентеження. Якщо ви минулого року витрачаєте сотні тисяч доларів на підтримку SAS і SAS, і ви не пропонуєте витрачати нічого на R, при надзвичайно низьких цінах підтримки (Революція тощо), хтось із ланцюга збирається запитати, чому. Чи було помилкою витрачати стільки грошей минулого року, коли R існував минулого року? Або це помилка кинути професійне програмне забезпечення для чогось, створеного групою добровольців?
Після того, як проблема буде вирішена таким чином, це пропозиція про програш, тому, можливо, краще не вирішувати її.
Крім того , що Гун правильно ідентифікував тут, найбільша проблема у корпоративному світі - це спадщина. І коли у вас є якісний виробничий код, який, як відомо, виконує роботу, ви не змінюєте його. SAS існував там з 1970-х, і на той час це був єдиний, на той час стандартів, сценарій статистичної мови. Обсяг виробничого коду, накопичений з тих пір у SAS у фармації та уряді, немислимий, десятки тисяч людських років. Переписування цього в R або Stata зайняло б кілька років, отриманий код стане більш гнучким, більш ефективним, прозорим, легшим та дешевшим у обслуговуванні, але ніхто не заплатить за таке рефакторинг. (Мій досвід роботи з цим полягає в тому, що мій код Stata, як правило, приблизно втричі коротший; я одного разу мав проект, який перетворював SPSS-код в Stata, де я зробив його приблизно в 20 разів коротше.
У певному сенсі це аналогічна історія з академічними видавцями: вони їдуть в бік кінцевих користувачів, зберігаючи свої підписки поза необхідністю; університет без передплати Nature - це насправді не університет. Безкоштовне публікування через професійні товариства здешевить, люди готують свої подання в LaTeX в наші дні, тому вони готові до фотоапаратів, і ті ж люди надаватимуть експертну оцінку, тому не буде жодних погіршень якості в жодному з вимірів. Але ... не існує торгової марки та фактору впливу, що стоїть за Інтернет-журналами.
Це підсумовує все: http://scatter.wordpress.com/2011/06/28/stata-12/ . Stata віддається перевазі в колах, пов'язаних з економікою та політикою, і чим більше я вивчаю SAS, тим більше мені подобається Stata.
Я працював так само ефективно програмістом SAS протягом останніх семи років, поруч зі мною співробітник програмував SAS довше, ніж я був живий. Як зазначалося тут, за SAS існує велика кількість інерції / спадщини; але SAS так само, як R - це шлях до засобу, а не до самого засобу.
SAS надзвичайно ефективний при послідовному доступі до даних, а доступ до бази даних через SQL надзвичайно добре інтегрований. PROC дуже добре задокументовані, але, на жаль, не повністю стандартизовані з позначеннями (PROC OPTMODEL та IML - два приклади). Це трохи незграбно, коли мова йде про написання складного коду, і не такий елегантний для паралельного коду. Я також виявив, що імпорт файлів CSV часом є великим нещастям, і вважаю за краще просто скинути його на R спочатку до бази даних.
Хоча в SAS є інтерфейси для спільних об'єктів і dll, ви не отримуєте приємного доступу до файлів заголовка або чогось подібного, а розподіл коду також недоступний через щасливі пакети.
Однак, мало кого турбує хтось, включаючи в свій код якийсь езотеричний пакунок, який зараз не працює або зламаний, і який код у SAS, як правило, є відмінним (основний код R також відмінний, а також вільно доступний для всіх).
Як згадувалося раніше, SAS також є надзвичайно дорогим, але це хороший інструмент, до якого я звертаюсь, коли знаю, що існує консервована процедура, яка добре працює для моїх потреб.
R + SAS + mysql з невеликою кількістю perl для склеювання їх разом працює надзвичайно :)
dplyr
бібліотеки - вона буквально переводить синтаксис R / dplyr в SQL і викликає базу даних, ви можете вирішити, які операції робити на db-сервері та які локально, використовуючи той самий синтаксис: cran.r-project. org / web / пакети / dplyr / vignettes / databases.html
Тому я використовую і R, і SAS - правда, в наукових колах, - але є кілька причин, по яких я схильний рухатися до SAS часом:
Ніхто не припустив, що причиною, яку він вважає за краще, є ідіотизм. Ось дві цитати, які я нещодавно натрапив:
"Про використання програмного забезпечення з відкритим кодом, такого як R, не було сумніву - ми не могли гарантувати ідеально повторюваний результат"
і
"Ми не зможемо надати будь-яку підтримку для цього, оскільки це програмне забезпечення з відкритим кодом"
Дві хвилини з цими людьми показали б їм, як вони помиляються.
Одне питання, схоже, не було чітко вирішене: жопа. Якщо ви перейдете з SAS, і все вибухне, людина, яка приймає рішення, завжди може сказати, що він придбав сучасне програмне забезпечення, і як йому знати, що воно порушиться? Якщо він вирішив піти з R, цей аргумент буде важче зробити. Так, це пов’язано з уже згадуваним тут аргументом інерції.
Кілька десятиліть тому вони говорили, що "нобій ніколи не звільнявся за покупку IBM" , яку називали найбільшою маркетинговою фразою коли-небудь.
Як користувач SAS і R, я б сказав, що найбільшою причиною використання SAS над R (коли ми це робимо) є його здатність до послідовної обробки. Нам потрібні лише машини, що мають не більше 4 ГБ оперативної пам’яті, щоб обробити дані, варті 15 років. Мені знадобиться набагато більша машина, що використовує запас R, і я не намагався перенести код SAS для запуску з Revolution R.
Станом на 2015 рік, актуарії віком близько 35 років вважають за краще використовувати R - у текстових книгах використовується як R, так і код SAS. Старі актуарії ніколи не навчилися використовувати R і віддають перевагу SAS та не використовують R. Частка актуарів, котрі фактично кодуються в SAS, зменшиться.
Якщо ви шукаєте науковця Google для праць, що посилаються на SAS, - ви знайдете постійні публікації з 550-ти на рік за останні кілька років. Якщо шукати документи, використовуючи R ("Фонд R для статистичних обчислень"), у 2014 році їх було 25100, а станом на середину липня 2015 року - 16 700. Складання курсу - зростає дуже швидко!
SAS протягом декількох років не допомагав собі, вимагаючи від університетів великих ліцензійних платежів - які вони з тих пір скасували - але зараз уже пізно багато університетів перейшли на викладання за допомогою R, а не SAS.
Нові статистичні методи публікуються в документах спільно з пакетом R. Деякі методики, які вже багато років знаходяться в базі R, досі не з'являються в SAS. Тепер ви можете використовувати R зсередини SAS.
Підсумовуючи, речі змінюються і швидко змінюються.
У фармацевтичній галузі використовується SAS, оскільки це те, що використовується та подобається FDA. Однак є деякі серйозні причини. Результати простежуються, а вихід має часову позначку. Статистики FDA можуть перевірити, що ви отримаєте. Це дуже добре для управління базами даних і це надійне програмне забезпечення. Звичайно, багато атрибутів SAS можна стверджувати, що вони присутні в інших програмних пакетах, включаючи R і SAS, є дорогими. І все-таки я думаю, що бажаючим бути прикладним статистиком, який працює в галузі, найкраще буде хоча б навчитися програмуванню в SAS. Використовуйте R або STATA, якщо ви хочете, але знаєте SAS. Коли ви працюєте в компанії, яка хоче, щоб ви використовували SAS, вони оплатять ліцензування.
Я думаю, що ця цитата Енн Х. Міллі підсумовує те, як багато людей ставляться до R:
У нас є клієнти, які будують двигуни для літаків. Я щасливий, що вони не користуються безкоштовною програмою, коли сідаю на літак.
На жаль, я думаю, що це неправильне уявлення (вільне == неповноцінне) є поширеним у широкій публіці.
(трохи поза темою): перегляд цього іншого етапу: деякі переваги, які має R в наукових колах, не стосуються промисловості.
Наприклад, в академічних школах - це явна перевага, якщо ви можете сказати студентам піти і отримати програмне забезпечення та працювати вдома. У промисловості, як правило, не слід брати з собою жодних даних ...
Ви також не повинні випробовувати кілька речей (TM), завантажувати багато пакетів (навіть якщо це надійні та перевірені), використовувати новітні методи. Замість цього, як правило, очікується, що ви будете дотримуватися методів та коду, які використовуються роками і де поведінка відома віками. Ви б з цим не завоювали багато академічних заслуг.
І звичайно, як уже згадувалося: ніхто не збирається ризикувати повторним затвердженням усіх видів регуляторного затвердження заради переходу на R. З того, що я бачив, це менше про R та більше про величезні витрати + робота з отримання регуляторного затвердження .
Незважаючи на те, що це досить песимістично, моєю відповіддю буде те, що люди, які приймають широкі рішення в корпораціях на кшталт «ми просто використовуємо SAS», - це також такі люди, які не довіряють тому, чого вони не розуміють, і автоматично вважають цінністю чогось прямо пропорційний кількості грошей, яку ви витрачаєте на це. Це призводить до того, що вони вважають за краще платити за SAS, а не витрачати час на дослідження альтернатив.
Чому велика лікарська компанія навіть хоче перейти на R із SAS? SAS коштує мільйони, але це наркотична компанія нічого. Однак перетворення всіх стабільних систем звітності з SAS в R обійдеться в 50-100 разів дорожче.
SAS має феноменальну систему підтримки: щоразу, коли мені потрібна допомога, вони змогли її надати протягом декількох годин.
І що саме R має, що SAS не має: 1) краща графіка ... нормально, це велика, але графіка - це не все. окрім R, завжди можна використовувати додатковий інструмент для створення крутих графіків, і SAS не надто погано, якщо мова йде про графіку 2) сучасна та більш ефективна мова програмування. Багато користувачів SAS не є програмістами і не переймаються використанням класної мови. Вони просто хочуть мати можливість аналізувати дані.
Я люблю R, але великій компанії було б божевільно перетворити на SAS. Хоча це може мати сенс і для менших фірм
Є кілька головних переваг, не в конкретному порядку
Я цілеспрямовано уникаю використання виразних термінів, таких як "спадщина" або "звичка" Багато компаній використовують SAS протягом 30 або 40 років, і вони мають мільйони рядків робочого коду. Крім того, є всі переваги стабільної бази коду з мільйонами днів користувачів в області, де невеликі помилки можуть бути критичними. Це та сама причина, що аромати Unix як і раніше популярні, навіть незважаючи на те, що Unix старше 40 років і певним чином застаріли. Нарешті, існує велике співтовариство досвідчених фахівців SAS, які звикли вирішувати бізнес-проблеми
Компанії мають багато різних джерел даних, що базуються в різних типах систем, а також у багатьох випадках, декількох операційних середовищах. R лише нещодавно отримав надзвичайно базові можливості для вирішення того, що може бути збережено в пам'яті. Порівняйте це з можливістю SAS підтримувати нативну, оптимізовану обробку баз даних для тераданих даних, щоб навести лише один приклад. У більшості реальних ситуацій найважча частина аналітики займається даними та операційним середовищем. (Вам потрібно запустити розроблений вами Windows код коду оцінки мейнфрейму? З SAS немає проблем. З R вам не пощастило.) R не вирішує жодної з цих проблем.
Користувач SAS може бути впевнений, що кожен модуль коду був протестований кваліфікованими людьми. Не варто приділяти час і зусилля вивченню походження коду або самостійному його затвердженню. Крім того, якщо виникають проблеми будь-якого типу, надійна допомога (від чогось такого, що є основним, як документація, до чогось такого вичерпного, як детальне вивчення несподіваних результатів чи поведінки складного методу), користувач може забрати телефон і отримати допомогу.
Мова вимикає деяких людей, тому що вона відрізняється від сучасних мов для загального програмування. Сказавши це, мова є високим рівнем, потужною, виразною та всеосяжною. Коротше кажучи, як тільки ви дізнаєтесь це, він виконує роботу. Для компаній елегантність рішення не є великою точкою продажу.
Підтримка клієнтів.
Я колись спілкувався з другом, який працював у компанії, що спеціалізується на встановленні серверів, і він мені потім пояснив, чому великі компанії завжди обирають продукти Microsoft, а не йдуть з відкритим кодом. Перевага Microsoft у порівнянні зі своїми конкурентами з відкритим кодом - підтримка клієнтів. Якщо щось не в порядку з продуктом, компанія може зателефонувати в Microsoft, великі компанії навіть мають персональну підтримку для них. Не так із програмним забезпеченням з відкритим кодом.
Я думаю, що це саме та сама причина, що SAS має перевагу над R.
Що з Frontends? Що таке еквівалент R для посібника з підприємства SAS, студії веб-звітів або корпоративного майнера? Редагувати: ці інструменти дозволяють користувачеві, який не програмує, використовувати ДАННИЙ СКЛАД, не знаючи про основні технології. Вони не є насамперед інструментами для використання SAS як такого. R GUI - це лише IDE для мови R / системи, AFAIK. Вони не можуть надати допомогу нетехнічному користувачеві, який хоче отримати інформацію та розуміння у DWH.
Я колись працював у консалтинговій компанії, яка надала допомогу SAS великому виробнику чіпів у Силіконовій долині. Наша контактна особа в компанії повідомила нам, що отримала пропозицію іншої компанії про надання їм саме таких консалтингів, використовуючи інше програмне забезпечення, яке охоплює всі сфери, на які поширюється SAS, і яке коштувало б компанії в частку того, що SAS стягував з них плату. ( $ 30 000 на противагу 1 000 000 $ ). Контактна особа розглядала, що робити, і вирішила проти інформування свого начальника про пропозицію, оскільки побоювалася звільнити його за використання SAS в першу чергу і не розглядала більш дешевих альтернатив. Натомість він наполягав на тому, щоб наша консалтингова компанія дала їм велику перерву в нашій консультаційній платі. Наша компанія погодилась.
Я не думаю, що про безпеку додатків не згадували. Це запитання було порушено у програмі Stack Overflow, але відмовилося, оскільки воно було поза темою.
Я співпрацюю зі Шведською національною радою з питань охорони здоров'я та добробуту, яка використовує SAS. Коли я розмовляв зі своїми статистиками (що подобається R), вони стверджують, що їхні ІТ-люди віддають перевагу SAS, оскільки вони не довіряють пакункам, завантаженим у Р. Моя дружина також працює в SAS, і її установа часто вимагає одного і того ж питання ...
Я хотів би побачити деякі коментарі до цього питання. Я швидко здійснив пошук, але не знайшов хороших посилань ...
Причиною, яку я зрозумів найбільш переконливою, було те, що SAS має велику бібліотеку вертикальних бізнес-модулів, якими користуються люди в цій вертикалі, тому це дещо зафіксовано.
Але також SAS вирішив потреби цих вертикальних сегментів у бізнесі та оптимізував їхні потреби - оптимізовані в розумінні "користувачеві не потрібно робити багато зайвих робіт, щоб отримати результати". Я не є користувачем SAS, тому це не означає як упереджений захист бізнес-стратегії SAS.
Будучи великим комерційним продуктом, який є SAS, для його просування докладаються сильні та скоординовані зусилля. Я не думаю, що зусилля по просуванню використання R можуть відповідати цим.
Я дивлюсь на Open Source або ліцензійне програмне забезпечення, подібне до цього, будь то SAS або щось інше. Мій відділ ІТ є для надання послуги нашому бізнесу. Компанія не заробляє гроші на ІТ, лише на підтримці бізнес-ІТ. Бізнес має річний дохід в $ 16 млрд. Вона коштує близько $ 200 млн на рік. Якщо гроші питання , я б скоротити витрати, але якщо я економлю 10% ( $ 20 мільйонів) з мого бюджету, бізнес буде повідомлення? Вони просто скоротять мій бюджет наступного року? Якщо ІТ не вдасться, бізнес втрачає дохід, скільки залежить від характеру відмови. Частини бізнесу можуть більше не отримувати прибуток. Якщо такий товар, як SAS, не вдається, я можу подати позов за контрактом. Якщо продукт OSS не працює, я не можу. Я не поверну свої $16 мільярдів, але я, можливо, повернусь назад, і реально за допомогою SAS, ви навряд чи втратите партію. Різниця в ціні та вартості повинна виправдовувати будь-який додатковий сприйнятий ризик для бізнесу. Іноді дотримуватися SAS дешевше, ніж перекваліфікуватись. Іноді виникають вищі пріоритетні питання, тому компанії залишаються в SAS. Деяким компаніям не потрібен повний функціонал, і в цьому випадку альтернативи є життєздатними. Деяким не потрібна підтримка, і знову альтернативи є життєздатними. Якщо ви відповідаєте вимогам бізнесу, то будь-які варіанти є дійсними, якщо ви хочете надати підтримку бізнесу, вам потрібно переглянути загальну вартість власності за 5-10 років, можливість набору експертів з інструментів, стабільність у продукті тож вам не доведеться переписувати все з кожним новим випуском, навчальні курси, доступні для підвищення кваліфікації,
Деякі причини, яких я не бачив, згадували:
Краща документація. Документація SAS є багатослівною, R - документацією. Багато компаній можуть віддавати перевагу детальній документації.
Кращі повідомлення про помилки. Повідомлення про помилки R часто здаються покликаними довести, що людина, яка пише повідомлення, розумніша, ніж людина, яка її читає.
Технічна підтримка. SAS має найкращу технічну підтримку, яку я стикався в будь-якому місці, що надається SAS. Ви можете отримати допомогу з R, але ця допомога розсіяна по різних місцях і не завжди доступна. Люди на різних сайтах, які надають допомогу з R, є добровольцями - і волонтери не зобов’язані допомагати. Люди в технічній підтримці SAS платять за те, що вони роблять - і вони роблять це добре. Мало того, що вони роблять це добре, вони ввічливо вказують на те, що часто немає у всіх громадах R (моя улюблена? "Я отримала допомогу, набравши" допомогу ", чому б не спробувати ввести" допомогу "?")
Я думаю, що кут спадщини може бути великим з наступних причин. Організація наймає людину, називає їх людиною X. Вони - гуру / майстер обчислень / тощо. Вони створюють дивовижні програми / інструменти SAS / тощо. Вони настільки гарні, що інші люди в організації не відчувають, що їм потрібно зрозуміти, як працюють програми. Вони дозволяють так просто натиснути кнопку, і все просто працює (чарівні чорні скриньки).
Особа Х залишає організацію. На жаль, знання, які має особа Х, залишають організацію (управління документацією та знаннями не було визначено пріоритетів, замість цього були робочі програми). Їх замінює людина Y. Людина Y чудово підходить до R, але не має уявлення про SAS, а значить, і не має уявлення про те, як насправді працюють програми SAS. Існує величезна крива навчання, щоб навіть зрозуміти, щозначно перевищує однорічну ліцензію на SAS. Я сподіваюся, що SAS зробить якийсь аналіз цієї торгівлі, і нехай це вплине на те, як вона встановлює ліцензійну плату (ну, якби я працював би в SAS). Також зауважте, як процедури побудови графіку SAS набагато кращі, ніж десятиліття тому (наприклад, proc sgplot vs proc plot). збіг, що R зробив хороший задум першим? Я думаю, що не! Це ефективно знижує ефективність від перемикання, оскільки побудова графіків вже не така вже й відрізняється - R все-таки краще, але недостатньо для перемикання ...
Для промислової статистики існують люди із забезпечення якості, які (як правило) не мають програми програмування, статистики чи наукового досвіду та перевіряють статистиків, програмістів та науковців. Вони хочуть знати: "Як ти знаєш, що те, що ти робиш, правильно?" і "Якщо це неправильно, то як ми можемо когось звинуватити і як вони за це заплатять?".
Ліцензія GNU / GPL Copyleft постачається із консервованим текстом, який говорить: "R - це вільне програмне забезпечення та постачається з АБСОЛЮТНО НЕ ГАРАНТІЯ" у тексті з усіма кришками точно так, як я написав. Це відрахування. Коли якісна людина читає цей текст, вони, в основному, прямо дискредитують R. Я маю на увазі, якщо товар хороший, варто додати гарантійне право? Така комерційна продукція привела нас до віри. Насправді, в кінцевому підсумку FDA сказала, що вони приймуть регуляторні подання в R, що відображають зміну в галузі програмного забезпечення. (Зверніть увагу, що це твердження з’являється після початкової дати публікації питання.)
Для того, хто нічого не знає про комп’ютери, уявлені сценарії безпеки, невідтворюваності та серйозних наукових помилок не є безмежними внаслідок цього АБСОЛЮТНО ВІДМОВЛЕННЯ ГАРАНТІЇ. Ми всі згодні, що помилки можуть мати катастрофічні витрати. Що стосується вашої ліцензії SAS, SAS має експертів, які можуть пояснити аудиторію своє програмне забезпечення, і за неможливого сценарію того, що SAS насправді викликає таке питання, вони можуть відповідати за штрафи та покарання (у них також є достатньо грошей для адвокатів, щоб гарантувати, що вони бути звільненим повністю в такому випадку). Тягар і витрати, пов'язані з тим, що аналітик / програміст представляє цю справу для R, в основному становить ліцензію SAS. Не те, що програмування в SAS повністю звільняє вас від нищівного тягаря дотримання якості!
В основному, я б сказав, що судовий процес зіграв важливу роль у необхідності дорогого ліцензійного програмного забезпечення.