Езикът R е стандарт за обработка на данни. Статистическата изчислителна среда R: опит от използване при преподаване на команди на език r

Нека поговорим малко за езика за програмиране, наречен R. напоследъкМожете да прочетете статии в нашите блогове за тези области, в които просто трябва да имате мощен език под ръка, за да работите със статистики и графики. И R е само един от тях. Ще бъде доста трудно за новодошъл в света на програмирането да повярва в това, но днес R вече е по-популярен от SQL, той се използва активно в търговски организации, научни изследвания и университети.

Без да навлизаме в правилата, синтаксиса и конкретните употреби, нека просто да разгледаме основните книги и ресурси, които ще ви помогнат да научите R от нулата.

Какво е езикът R, защо ви е необходим и как можете да го използвате разумно, можете да научите от прекрасния Руслан Купцов, който той проведе преди малко по-малко от година като част от GeekWeek-2015.

Книги

Сега, когато в главата ви има определен ред, можете да започнете да четете литература, за щастие има повече от достатъчно. Да започнем с местни автори:


Интернет ресурси

Всеки, който иска да научи език за програмиране, трябва да посети два ресурса в търсене на знания: официалния уебсайт на неговите разработчици и най-голямата онлайн общност. Добре. Нека не правим изключение за R:

Но отново, пропити от загриженост за онези, които английски езикВсе още не съм имал време да го науча, но наистина искам да науча R, нека споменем няколко руски ресурса:

Междувременно нека завършим картината с малък списък от англоезични, но не по-малко образователни сайтове:

CRAN всъщност е място, където можете да изтеглите на вашия компютър средата за разработка R. В допълнение, ръководства, примери и друго полезно четиво;

Quick-R - кратко и ясно за статистиките, методите за обработката им и езика R;

Burns-Stat - за R и неговия предшественик S с огромен брой примери;

R за Data Science е друга книга от Garrett Grolemund, преведена във формат на онлайн учебник;

Awesome R - селекция от най-добрия код от официалния уебсайт, публикуван в нашия любим GitHub;

Mran - R език от Microsoft;

Tutorial R е друг ресурс с организирана информация от официалния уебсайт.

Много примери и статии на този сайт активно използват езика за програмиране „R“.

R за Linux обикновено може да се инсталира с помощта на хранилищата на вашата дистрибуция. Използвам базирани на Debian дистрибуции, в които стандартната команда за инсталиране на R изглежда така:

Sudo apt инсталира r-base

Трябва да въведете това в терминала.

Красотата на R е следната:

  1. Тази програма е безплатна (разпространява се под GPL лиценз),
  2. Написани са много пакети за решаване на тази програма широк спектързадачи. Всички те също са безплатни.
  3. Програмата е много гъвкава: размерите на всякакви вектори и матрици могат да се променят по желание на потребителя, данните нямат твърда структура. Това свойство се оказва изключително полезно в случай на прогнозиране, когато изследователят трябва да даде прогноза за произволен период.

Последното свойство е особено уместно, тъй като други статистически пакети (като SPSS, Eviews, Stata) предполагат, че може да се интересуваме само от анализиране на данни, които имат фиксирана структура (например всички данни в работен файл трябва да са с еднаква периодичност със същите начални и крайни дати).

R обаче не е най-дружелюбната програма. Докато работите с него, забравете за мишката - почти всичко важни действияизвършва се с помощта на командния ред. Въпреки това, за да направим живота малко по-лесен и самата програма малко по-приветлива, има програма за интерфейс, наречена RStudio. Можете да го изтеглите от тук. Инсталира се, след като вече е инсталиран самият R. RStudio има много удобни инструменти и приятен интерфейс, но анализът и прогнозирането в него все още се извършват с помощта на командния ред.

Нека се опитаме да разгледаме тази прекрасна програма.

Запознаване с RStudio

Интерфейсът на RStudio изглежда така:

В горния десен ъгъл в RStudio е посочено името на проекта (който засега имаме “Няма” - тоест липсва). Ако щракнете върху този надпис и изберете „Нов проект“ ( нов проект), тогава ще бъдем помолени да създадем проект. За основни цели на прогнозиране просто изберете „Нова директория“ (нова папка за проекта), „Празен проект“ (празен проект) и след това въведете името на проекта и изберете директорията, в която да го запишете. Използвайте въображението си и се опитайте сами да измислите име :).

Когато работите с един проект, винаги можете да получите достъп до съхраняваните в него данни, команди и скриптове.

От лявата страна на прозореца на RStudio е конзолата. Това е мястото, където ще въвеждаме различни команди. Например, нека напишем следното:

Тази команда ще генерира 100 случайни променливиот нормална дистрибуцияс нула математическо очакванеи дисперсия на единица, след което ще създаде вектор, наречен „x“ и ще запише получените 100 стойности в него. символ "<-» эквивалентен символу «=» и показывает какое значение присвоить нашей переменной, стоящей слева. Иногда вместо него удобней использовать символ «->”, въпреки че нашата променлива в този случай трябва да е отдясно. Например, следният код ще създаде обект "y", който е абсолютно идентичен с обекта "x":

Тези вектори сега се появяват в горната дясна част на екрана, под раздела, който съм озаглавил „Околна среда“:

Промени в раздела "Среда".

Тази част от екрана ще показва всички обекти, които запазваме по време на сесията. Например, ако създадем матрица като тази:

\(A = \begin(pmatrix) 1 & 1 \\ 0 & 1 \end(pmatrix) \)

с тази команда:

след това ще се появи в раздела „Среда“:

Всяка функция, която използваме, изисква да присвоим някои стойности на определени параметри. Функцията matrix() има следните параметри:

  • данни – вектор с данни, които трябва да бъдат записани в матрицата,
  • nrow – брой редове в матрицата,
  • ncol – брой колони в матрицата,
  • byrow - логически параметър. Ако е “TRUE” (вярно), тогава матрицата ще бъде попълнена в редове (отляво надясно, ред по ред). По подразбиране този параметър е зададен на FALSE.
  • dimnames - лист с имена на редове и колони.

Някои от тези параметри имат стойности по подразбиране (например byrow=FALSE), докато други могат да бъдат пропуснати (например dimnames).

Един от триковете на “R” е, че всяка функция (например нашата matrix()) може да бъде достъпна чрез директно указване на стойности:

Или можете да го направите по начина, по който го направихме по-рано - като спазвате последователността и пропускате имената на параметрите.

За да видите съдържанието на всеки обект, намиращ се в раздела „Околна среда“, просто отпечатайте името му в конзолата:

Друга възможност е да кликнете върху името на обекта в раздела "Среда".

където матрицата е името на функцията, която ни интересува. В този случай RStudio ще отвори панела „Помощ“ специално за вас с описание:

Можете също да намерите помощ за функция, като напишете името на функцията в прозореца „търсене“ (икона с леща) в раздела „Помощ“.

Ако не си спомняте как точно да напишете името на функция или какви параметри се използват в нея, просто започнете да пишете името й в конзолата и натиснете бутона „Tab“:

В допълнение към всичко това, можете да пишете скриптове в RStudio. Може да са ви необходими, ако трябва да напишете програма или да извикате последователност от функции. Скриптовете се създават с помощта на бутона със знак плюс в горния ляв ъгъл (трябва да изберете „R Script“ от падащото меню). В прозореца, който се отваря след това, можете да напишете всякакви функции и коментари. Например, ако искаме да начертаем линейна графика върху серията x, можем да го направим по следния начин:

График(x) линии(x)

Първата функция изгражда проста точкова диаграма, а втората функция добавя линии върху точките, свързващи точките последователно. Ако изберете тези две команди и натиснете “Ctrl+Enter”, те ще бъдат изпълнени, карайки RStudio да отвори раздела “Plot” в долния десен ъгъл и да покаже начертания график в него.

Ако все още имаме нужда от всички въведени команди в бъдеще, тогава този скрипт може да бъде запазен (дискета в горния ляв ъгъл).

В случай, че трябва да се обърнете към команда, която вече сте въвели някога в миналото, има раздел „История“ в горния десен ъгъл на екрана. В него можете да намерите и изберете всяка команда, която ви интересува, и щракнете двукратно, за да я поставите в конзолата. В самата конзола можете да получите достъп до предишни команди, като използвате бутоните нагоре и надолу на клавиатурата. Комбинацията от клавиши „Ctrl+Up“ ви позволява да покажете списък с всички скорошни команди в конзолата.

Като цяло, RStudio има много полезни клавишни комбинации, които правят работата с програмата много по-лесна. Можете да прочетете повече за тях.

Както споменах по-рано, има много пакети за R. Всички те се намират на сървъра на CRAN и за да инсталирате някой от тях трябва да знаете името му. Инсталирането и актуализирането на пакети се извършва с помощта на раздела „Пакети“. Отивайки до него и щраквайки върху бутона „Инсталиране“, ще видим нещо като следното меню:

Нека напишем в прозореца, който се отваря: прогнозата е пакет, написан от Rob J. Hyndman, съдържащ куп полезни за нас функции. Щракнете върху бутона „Инсталиране“, след което пакетът „прогноза“ ще бъде инсталиран.

Като алтернатива можем да инсталираме всеки пакет, като знаем името му, като използваме командата в конзолата:

Install.packages("smooth")

при условие, че е, разбира се, в хранилището на CRAN. smooth е пакет, чиито функции разработвам и поддържам.

Някои пакети са налични само в изходен код на сайтове като github.com и изискват първо да бъдат изградени. За да създадете пакети под Windows, може да ви е необходима програмата Rtools.

За да използвате някой от инсталираните пакети, трябва да го активирате. За да направите това, трябва да го намерите в списъка и да го отметнете или да използвате командата в конзолата:

Библиотека (прогноза)

Един неприятен проблем може да се появи в Windows: някои пакети лесно се изтеглят и сглобяват, но не се инсталират по никакъв начин. R в този случай пише нещо като: "Предупреждение: не може да се премести временната инсталация...". Всичко, което трябва да направите в този случай е да добавите папката с R към изключенията във вашата антивирусна програма (или да я изключите, докато инсталирате пакети).

След като изтеглим пакета, всички включени в него функции ще бъдат достъпни за нас. Например функцията tsdisplay(), която може да се използва по следния начин:

Tsdisplay(x)

Тя ще ни изгради три графики, които ще обсъдим в главата „Набор от инструменти за прогнозиране“.

В допълнение към прогнозния пакет, често използвам пакета Mcomp за различни примери. Той съдържа серии от данни от базата данни M-Competition. Затова ви препоръчвам да го инсталирате и вие.

Много често ще ни трябват не просто набори от данни, а данни от класа „ts“ (времеви серии). За да направите времева серия от която и да е променлива, трябва да изпълните следната команда:

Тук началният параметър ни позволява да посочим датата, от която започва нашият времеви ред, а честотата указва честотата на данните. Числото 12 в нашия пример показва, че имаме работа с месечни данни. В резултат на изпълнението на тази команда, ние трансформираме нашия вектор "x" във времева серия от месечни данни, започвайки от януари 1984 г.

Това са основните елементи на R и RStudio, които ще ни трябват.

P.P.S. Доста добро ръководство за R е публикувано на уебсайта QSAR4U от Павел Полишчук.

П.П.П.С. Много информация за R е представена на официалния уебсайт.

Самостоятелна работа

Ето някои задачи, които можете да направите сами в R. Изпълнете следните команди, вижте какво се случва и се опитайте да разберете защо това се е случило:

(41/3 + 78/4)*2 2^3+4 1/0 0/0 max(1,min(-2.5),max(2,pi)) sqrt(3^2+4^2 ) exp (2)+3i log(1024) log(1024, база=2) c(1:3) c(1:5)*2 + 4 x

Бих искал да говоря за използването на безплатната среда за статистически анализ R. Считам я за алтернатива на статистически пакети като SPSS Statistics. За мое дълбоко съжаление, той е напълно непознат в необятността на нашата родина, но напразно. Вярвам, че възможността за писане на допълнителни процедури за статистически анализ в S прави R полезен инструмент за анализ на данни.

През пролетния семестър на 2010 г. имах възможността да изнасям лекции и да провеждам практически занятия по курса „Анализ на статистически данни“ за студенти от катедрата по интелигентни системи на Руския държавен хуманитарен университет.

Студентите ми преди това взеха семестриален курс по теория на вероятностите, обхващащ основите на дискретните вероятностни пространства, условните вероятности, теоремата на Бейс, " големи числа“, малко информация за нормален закони централната гранична теорема.

Преди около пет години вече преподавах часове по (тогава все още комбиниран) семестриален курс „Основи на теорията на вероятностите и математическа статистика”, така че разширих бележките си (давани преди всеки час на студентите) върху статистиката. Сега, когато Руският държавен хуманитарен университет има студентски сървър isdwiki.rsuh.ru на катедрата, аз едновременно ги качвам на FTP.

Възникна въпросът: каква програма да използвам за провеждане практически занятияв компютърната лаборатория? Често използваният Microsoft Excel беше отхвърлен както защото беше патентован, така и защото внедри някои статистически процедури неправилно. Можете да прочетете за това например в книгата на А. А. Макаров и Ю. Н. Тюрин „Статистически анализ на данни на компютър“. Електронните таблици Calc от безплатния офис пакет Openoffice.org са русифицирани, така че трудно мога да намеря нужната функция (имената им също са съкратени отвратително).

Най-често използваният пакет е SPSS Statistics. SPSS вече е придобит от IBM. Сред предимствата на IBM SPSS Statistics бих искал да подчертая:

  • Удобно зареждане на данни в различни формати (Excel, SAS, чрез OLE DB, чрез ODBC Direct Driver);
  • Наличие както на команден език, така и на обширна система от менюта за директен достъп до различни процедури за статистически анализ;
  • Графични средства за показване на резултати;
  • Вграден модул Statistics Coach, който интерактивно предлага подходящ метод за анализ.
Недостатъците на IBM SPSS Statistics според мен са:
  • Заплащане дори и за студенти;
  • Необходимостта от получаване на (допълнително платени) модули, съдържащи специални процедури;
  • Поддържа само 32-битови операционни системи Linux, въпреки че Windows поддържа както 32-битови, така и 64-битови.
Като алтернатива избрах . Тази система започва да се разработва чрез усилията на Робърт Джентълман и Рос Ихак от Департамента по статистика в Университета на Мелбърн през 1995 г. Първите букви от имената на авторите определят нейното заглавие. Впоследствие водещи статистици се включват в разработването и разширяването на тази система.

Считам предимствата на обсъжданата система:

  • Разпространение на програмата под GNU Public License;
  • Наличност като изходни текстове, и двоични модули в обширната мрежа от хранилища CRAN (The Comprehensive R Archive Network). За Русия това е сървърът cran.gis-lab.info;
  • Наличие на инсталационен пакет за Windows (работи както на 32, така и на 64-битова Vista). Случайно се оказа, че инсталацията не изисква администраторски права под Windows XP;
  • Възможност за инсталиране от хранилище на Linux (работи при мен на 64-битовата версия на Ubuntu 9.10);
  • Наличие на собствен език за програмиране на статистически процедури R, който всъщност се превърна в стандарт. Например, поддържа се напълно нова система IBM SPSS Statistics Developer;
  • Този език е разширение на езика S, разработен в Bell Labs, който в момента формира основата на търговската система S-PLUS. Повечето програми, написани за S-PLUS, могат лесно да бъдат изпълнени в R среда;
  • Възможност за обмен на данни с електронни таблици;
  • Възможност за запазване на цялата история на изчисленията за целите на документацията.
За първия урок бяха подготвени дискове, на които бяха записани инсталационни файлове, документация и ръководства. Ще ви разкажа повече за последното. CRAN предоставя подробни ръководства за потребителя за инсталиране, езика R (и неговия подмножество S), писане на допълнителни статистически процедури и експортиране и импортиране на данни. В раздела Допринесена документация има голямо числопубликации от учители статистици, използващи този пакет в учебен процес. За съжаление няма нищо на руски, въпреки че например има дори на полски. Сред англоезичните книги бих искал да спомена „Използване на R за уводна статистика“ от професор Джон Верзани от Градския университет в Ню Йорк и „Въведение в проекта R за статистически изчисления“ от професор Роситер (Холандия) от Международен институтГеоинформатика и наблюдения на Земята.

Първият урок беше посветен на инсталирането и обучението за използване на пакета, запознаване със синтаксиса на езика R. Като тестова задача беше използвано изчисляване на интеграли по метода Монте Карло. Ето пример за изчисляване на вероятността от r.v. с експоненциално разпределение с параметър 3 вземете стойност по-малка от 0,5 (10 000 е броят на опитите).
> x=runif(10000,0,0.5)
> y=runif(10000,0,3)
>t=y<3*exp(-3*x)
> u=x[t]
>v=y[t]
> парцел(u,v)
> i=0,5*3*дължина(u)/10000

Първите два реда определят равномерно разпределение на точките в правоъгълника x, след това се избират тези точки, които попадат под графиката на експоненциалната плътност 3*exp(-3*x), функцията за графика показва точките в прозореца за графичен изход и накрая се изчислява търсеният интеграл.
Вторият урок беше посветен на изчисляване на описателна статистика (квантили, медиана, средна стойност, дисперсия, корелация и ковариация) и създаване на графики (хистограми, кутия и мустаци).
В следващите класове беше използвана библиотеката Rcmdr. Това е графичен потребителски интерфейс (GUI) за средата R. Библиотеката е създадена с усилията на професор Джон Фокс от университета Макмастър в Канада.

Инсталирането на тази библиотека се извършва чрез изпълнение на командата install.packages("Rcmdr", dependencies=TRUE) в средата на R. Ако самата среда е интерпретатор на език R, тогава добавката "Rcmdr" е допълнителен прозорец оборудван със система от менюта, съдържаща голям брой команди, съответстващи на стандартни статистически процедури. Това е особено удобно за курсове, където основното нещо е да научите ученика да натиска бутони (за мое съжаление, те стават все по-често срещани).

Бележките от семинара от предишния ми курс бяха разширени. Достъпни са и чрез FTP от сайта isdwiki.rsuh.ru. Тези бележки съдържаха таблици с критични стойности, които бяха използвани за изчисления на дъската. Тази година учениците бяха насърчавани да решават тези задачи на компютъра и също така да проверяват таблиците, използвайки (нормалните) приближения, също предоставени в бележките.

Имаше и някои мои грешки. Например разбрах твърде късно, че Rcmdr ви позволява да импортирате данни от изтеглени пакети, така че относително големи проби бяха обработени само в класове по регресионен анализ. При представяне на непараметрични тестове учениците въвеждаха данни на ръка, използвайки моите бележки. Друг недостатък, както сега разбирам, беше недостатъчният брой домашни задачи за писане на доста сложни програми на езика R.

Трябва да се отбележи, че няколко старши студенти посещаваха часовете ми, а някои изтегляха материали от лекции и семинари. Студентите от катедрата по интелигентни системи на Руския държавен университет за хуманитарни науки получават фундаментално обучение по математика и програмиране, така че използването на R среда (вместо електронни таблиции статистически пакети с фиксирани статистически процедури) ми се струва много полезно.

Ако сте изправени пред задачата да изучавате статистика и особено да пишете нестандартни процедури за статистическа обработка на данни, тогава препоръчвам да насочите вниманието си към пакета R.

Относно курса
В този курс ще разглеждаме R предимно като език за програмиране, а не като инструмент за прилагане на специфични алгоритми. Програмата представя основни типове данни и универсални семантични правила, а също така засяга някои сложни темисвързани с типични задачи, които възникват при обработката и анализа на данни.

Какво е необходимо за преминаване
Всъщност езикът R (версия 3.2.0 или по-нова). RStudio ще се използва като среда за разработка на видео уроците. Въпреки това, ако желаете, можете да работите във всяка друга IDE или любим редактор.

Сертификат
Преминаващ резултат за получаване на сертификат - 70 точки от 100. За сертификат за отличие - 92 .

За кого е този курс

Студенти и докторанти, изследователи, анализатори и изследователи, работещи в областта на анализа на данни

Курсът не предполага познаване на R или други езици за програмиране. Въпреки това, наличието на опит в науката за данни или познаването на основните принципи на програмиране ще направи уроците по-лесни. Този курс е добре съвместим с курса за анализ на данни в R. Тези курсове са независими и могат да се вземат в произволен ред.

Неразделна част е статистическият анализ научно изследване. Висококачествената обработка на данни увеличава шансовете за публикуване на статия в реномирано списание и извеждане на изследването на международно ниво. Има много програми, които могат да предоставят висококачествен анализ, но повечето от тях са платени и често лицензът струва няколкостотин долара или повече. Но днес ще говорим за статистическа среда, за която не е нужно да плащате и чиято надеждност и популярност съперничат на най-добрите търговски статистики. пакети: ще ви запознаем с R!

Какво е R?

Преди да дадем ясна дефиниция, трябва да се отбележи, че R е нещо повече от програма: това е рамка, език и дори движение! Ще разгледаме R от различни ъгли.

R е изчислителна среда, разработено от учени по данни, математическо моделиранеи работа с графики. R може да се използва като прост калкулатор, можете да извършвате прости статистически анализи (например ANOVA или регресионен анализ) и по-сложни отнемащи време изчисления, да тествате хипотези, да изграждате векторни графики и карти. Това не е пълен списък на това, което може да се направи в тази среда. Заслужава да се отбележи, че се разпространява безплатно и може да се инсталира както на Windows, така и на операционни системи от клас UNIX (Linux и MacOS X). С други думи, R е безплатен и междуплатформен.

R е език за програмиране, благодарение на който можете да пишете свои собствени програми ( скриптове) използване, както и използване и създаване на специализирани разширения ( пакети). Пакетът е набор от файлове с обща информацияи примери, събрани заедно в един архив. играят важна роля, тъй като се използват като допълнителни разширения, базирани на R. Всеки пакет обикновено е посветен на конкретна тема, например: пакетът "ggplot2" се използва за създаване на красиви векторни графики с определен дизайн, а "qtl" пакетът е идеален за генетично картографиране. Има редица такива пакети в R библиотеката: този моментнад 7000! Всички те са проверени за грешки и са общодостъпни.


R е за общност/движение.
Тъй като R е безплатен продукт с отворен код, неговата разработка, тестване и отстраняване на грешки не се извършва от отделна компания с нает персонал, а от самите потребители. В продължение на две десетилетия огромна общност се формира от ядро ​​от разработчици и ентусиасти. Според последните данни повече от 2 милиона души по един или друг начин са помогнали за разработването и популяризирането на R на доброволна основа, вариращи от превод на документация, създаване на курсове за обучение и завършващи с разработването на нови приложения за науката и индустрията. В интернет има огромен брой форуми, където можете да намерите отговори на повечето въпроси, свързани с R.

Как изглежда R средата?

Има много "черупки" за R, чийто външен вид и функционалност могат да варират значително. Но ще разгледаме накратко само три от най-популярните опции: Rgui, Rstudio и R, стартирани в Linux/UNIX терминала като команден ред.


Езикът R в света на статистическите програми

В момента има десетки висококачествени статистически пакети, сред които безспорни лидери са SPSS, SAS и MatLab. През 2013 г. обаче, въпреки силната конкуренция, R стана най-използваният софтуерен продукт за статистически анализи в научни публикации (http://r4stats.com/articles/popularity/). Освен това през последното десетилетие R става все по-популярен в бизнес сектора: гигантски компании като Google, Facebook, Ford и New York Times активно го използват за събиране, анализиране и визуализиране на данни (http://www.revolutionanalytics .com/companies-using-r). За да разберем причините за нарастващата популярност на езика R, нека обърнем внимание на неговите общи черти и разлики от други статистически продукти.

Като цяло повечето статистически инструменти могат да бъдат разделени на три типа:

  1. GUI програми, на принципа „кликнете тук, тук и получете готовия резултат“;
  1. статистически програмни езици, които изискват основни умения по програмиране;
  1. "смесен", които също имат графичен интерфейс ( GUI) и възможност за създаване на скриптови програми (например: SAS, STATA, Rcmdr).

Характеристики на програми с GUI

Програмите с графичен интерфейс имат познат вид на обикновения потребител и са лесни за научаване. Но те не са подходящи за решаване на нетривиални проблеми, тъй като имат ограничен набор от статистики. методи и е невъзможно да напишете свои собствени алгоритми в тях. Смесеният тип съчетава удобството на GUI обвивката и силата на езиците за програмиране. Въпреки това, при подробно сравнение на статистическите възможности с езиците за програмиране SAS и STATA, както R, така и MatLab са по-ниски (сравнение на статистическите методи R, MatLab, STATA, SAS, SPSS). Освен това ще трябва да платите прилична сума пари, за да лицензирате тези програми, а единствената безплатна алтернатива е Rcmdr: обвивка за R с GUI (Rcommander).

Сравнение на R с програмните езици MatLab, Python и Julia

Сред езиците за програмиране, използвани в статистическите изчисления, водещите позиции са заети от R и Matlab. Те са подобни един на друг, както в външен вид, и по отношение на функционалността; но те имат различни потребителски лобита, което определя тяхната специфика. Исторически MatLab е фокусиран върху приложните науки на инженерните специалности, така че силни страниса мат. моделиране и изчисления, плюс това е много по-бързо от R! Но тъй като R е разработен като език с тесен профил за статистическа обработка на данни, много експериментални статистики. методи се появиха и бяха консолидирани в него. Този факт и неговата нулева цена направиха R идеална платформа за разработване и използване на нови пакети, използвани в основните науки.

Други "конкурентни" езици са Python и Julia. Според мен Python, като език за програмиране с общо предназначение, е по-подходящ за обработка на данни и събиране на информация с помощта на уеб технологии, отколкото за статистически анализ и визуализация (основните разлики между R и Python са добре описани). Но статистическият език Julia е доста млад и амбициозен проект. Основната характеристика на този език е скоростта на изчисленията, в някои тестове надвишаваща R 100 пъти! Докато Julia е в ранен етап на развитие и има няколко допълнителни пакета и наследници, в дългосрочен план Julia е може би единственият потенциален конкурент на R.

Заключение

Така езикът R сега е един от водещите статистически инструменти в света. Използва се активно в генетиката, молекулярна биологияи биоинформатика, науки заобикаляща среда(екология, метеорология) и селскостопански дисциплини. R също се използва все повече в обработката на медицински данни, измествайки търговските пакети като SAS и SPSS от пазара.

Предимства на R средата:

  • безплатни и междуплатформени;
  • богат арсенал от статистики. методи;
  • висококачествена векторна графика;
  • повече от 7000 тествани опаковки;
  • гъвкав за използване:
    - позволява ви да създавате/редактирате скриптове и пакети,
    - взаимодейства с други езици, като: C, Java и Python,
    - може да работи с формати на данни за SAS, SPSS и STATA;
  • активна общност от потребители и разработчици;
  • редовни актуализации, добра документация и техническа поддръжка. поддържа.

недостатъци:

  • малко количество информация на руски (въпреки че през последните пет години се появиха няколко курса за обучение и интересни книги);
  • относителна трудност за използване от потребител, който не е запознат с езиците за програмиране. Това може да бъде частично изгладено чрез работа в обвивката на Rcmdr GUI, за която писах по-горе, но за нестандартни решениявсе още трябва да използвате командния ред.

Списък с полезни източници

  1. Официален уебсайт: http://www.r-project.org/
  2. Уебсайт за начинаещи: http://www.statmethods.net/
  3. Един от най-добрите справочници: The R Book, 2-ро издание от Michael J. Crawley, 2012 г.
  4. Списък на наличната литература на руски + добър блог