R

R Урок за програмиране

R Урок за програмиране
Искате бързо за начинаещи до експертни програмисти R? R е един от най-добрите езици за програмиране за работа със статистика, математика и наука за данни. Този урок ще ви помогне да научите R и да изградите първия си модел за машинно обучение. Да започваме.

Компилиране и стартиране на R от командния ред

Двата начина за стартиране на R програми са: R скрипт, който се използва широко и е най-предпочитан, а вторият е R CMD BATCH, това не е често използвана команда. Можем да ги извикаме директно от командния ред или друг график за работа.

Възможно е да извикате тези команди от черупка, вградена в IDE, а в наши дни RStudio IDE идва с инструменти, които подобряват или управляват функциите R скрипт и R CMD BATCH.

Функцията source () вътре в R е добра алтернатива на използването на командния ред. Тази функция може също да извика скрипт, но за да използвате тази функция, трябва да сте в R средата.

R езикови вградени набори от данни

За да изброите наборите от данни, които са вградени с R, използвайте командата data (), след това намерете това, което искате, и използвайте името на набора от данни във функцията data (). Подобни данни (име на функция).

Показване на набори от данни в R

Въпросният знак (?) може да се използва за искане на помощ за набори от данни.

За да проверите за всичко използвайте резюме ().

Plot () също е функция, която се използва за нанасяне на графики.

Нека създадем тестов скрипт и го стартираме. Създайте p1.R файл и го запазете в домашната директория със следното съдържание:

Пример за код:

 # Прост здрав световен код в R print ("Hello World!") print (" LinuxHint ") print (5 + 6) 

Стартиране на Hello World

R Рамки за данни

За съхраняване на данни в таблици използваме структура в R, наречена a Рамка за данни. Използва се за изброяване на вектори с еднаква дължина. Например следната променлива nm е рамка за данни, съдържаща три вектора x, y, z:

x = c (2, 3, 5) y = c ("aa", "bb", "cc") z = c (TRUE, FALSE, TRUE) # nm е рамка за данни nm = данни.кадър (n, s, b) 

Има концепция, наречена ВграденРамки за данни и в R. mtcars е една такава вградена рамка за данни в R, която ще използваме като пример за наше по-добро разбиране. Вижте кода по-долу:

 > mtcars mpg cyl disp hp drat wt ... Mazda RX4 21.0 6 160 110 3.90 2.62… автобус RX4 Wag 21.0 6 160 110 3.90 2.88… Datsun 710 22.8 4 108 93 3.85 2.32 .. 

mtcars bulitin dataframe

Заглавката е горният ред на таблицата, който съдържа имената на колоните. Редовете с данни се даряват от всяка хоризонтална линия; всеки ред започва с името на реда и след това последван от действителните данни. Членът на данните на ред се нарича клетка.

Ще въведем координатите на редовете и колоните в оператор с квадратна скоба '[], за да извлечем данни в клетка. За да отделим координатите, използваме запетая. Редът е от съществено значение. Координатата започва с ред, след това със запетая и след това завършва с колоната. Стойност на клетката 2nd ред и 1ул колоната е дадена като:

 > mtcars [2, 2] [1] 6 

Можем също да използваме име на ред и колона вместо координати:

 > mtcars ["Bus RX4", "mpg"] [1] 6 

функцията nrow се използва за намиране на броя редове в рамката с данни.

 > nrow (mtcars) # брой редове с данни [1] 32 

Функцията ncol се използва за намиране на броя на колоните в рамка с данни.

 > ncol (mtcars) # брой колони [1] 11 

R Цикли за програмиране

При някои условия използваме цикли, когато искаме да автоматизираме някаква част от кода или искаме да повторим последователност от инструкции.

За цикъл в R

Ако искаме да отпечатаме информацията за тези години повече от веднъж.

 print (paste ("The year is", 2000)) "The year is 2000" print (paste ("The year is", 2001)) "The year is 2001" print (paste ("The year is", 2002) ) "Годината е 2002" print (paste ("The year is", 2003)) "The year is 2003" print (paste ("The year is", 2004)) "The year is 2004" print (paste (" Годината е ", 2005))" Годината е 2005 " 

Вместо да повтаряме нашето твърдение отново и отново, ако използваме за цикъл ще бъде много по-лесно за нас. Като този:

 за (година в c (2000,2001,2002,2003,2004,2005)) print (paste ("Годината е", година)) "Годината е 2000" "Годината е 2001" "Годината е 2002 "" Годината е 2003 "" Годината е 2004 "" Годината е 2005 " 

Докато Loop в R

 while (израз) изявление 

Ако резултатът от израза е TRUE, се въвежда тялото на цикъла. Изявленията вътре в цикъла се изпълняват и потокът се връща, за да оцени израза отново. Цикълът ще се повтаря, докато изразът се изчисли на FALSE, в който случай цикълът излиза.

Пример за цикъл while:

 # i първоначално се инициализира до 0 i = 0, докато (i<5)  print (i) i=i+1  Output: 0 1 2 3 4 

В горния цикъл while изразът е i<5което измерва на TRUE, тъй като 0 е по-малко от 5. Следователно тялото на цикъла се изпълнява и i се извежда и увеличава. Важно е да се увеличи i вътре в цикъла, така че по някакъв начин ще изпълни условието в даден момент. В следващия цикъл стойността на i е 1 и цикълът продължава. Ще се повтаря до i е равно на 5, когато условието 5<5 reached loop will give FALSE and the while loop will exit.

R Функции

За да създадете функция ние използваме директивна функция (). По-конкретно, те са R обекти от клас функция.

е <- function()  ##some piece of instructions  

По-специално, функциите могат да бъдат предадени на други функции, тъй като аргументите и функциите могат да бъдат вложени, за да ви позволят да определите функция вътре в друга функция.

Функциите по избор могат да имат някои имена на аргументи, които имат стойности по подразбиране. Ако не искате стойност по подразбиране, можете да зададете нейната стойност на NULL.

Някои факти за аргументите на R функция:

# Определяне на функция: f <- function (x, y = 1, z = 2, s= NULL)   

Създаване на логистичен регресионен модел с вграден набор от данни

The glm () функцията се използва в R, за да съответства на логистичната регресия. Функцията glm () е подобна на lm (), но glm () има някои допълнителни параметри. Форматът му изглежда така:

 glm (X ~ Z1 + Z2 + Z3, семейство = бином (връзка = ”logit”), данни = мидани) 

X зависи от стойностите на Z1, Z2 и Z3. Което означава, че Z1, Z2 и Z3 са независими променливи и X е зависимата функция включва допълнително семейство параметри и има стойност бином (link = “logit”), което означава, че функцията link е logit и вероятностното разпределение на регресионния модел е биномно.

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

Урок за битка за Уеснот
Битката за Уеснот е една от най-популярните стратегически игри с отворен код, които можете да играете по това време. Тази игра не само се разработва о...
0 А.д. Урок
От многото стратегически игри, 0 A.д. успява да се открои като изчерпателно заглавие и много дълбока, тактическа игра, въпреки че е с отворен код. Раз...
Урок за Unity3D
Въведение в Unity 3D Unity 3D е мощен двигател за разработка на игри. Това е кръстосана платформа, която ви позволява да създавате игри за мобилни уст...