Liz's Blog

就是要學R #1:Basic 基礎篇

| Comments

早在今年四月就已經在Udemy課程特價時,買了R的課程,結果後來在澳洲網路不穩,加上工作也忙,所以一直遲遲沒有開始上課。這週終於下定決心,每天都要上一點點資料科學的課程才行(握拳再握拳)!

課程名稱:Data Science and Machine Learning Bootcamp with R
講師:Jose Portilla
Udemy不定時特價:AUD 15(我購買的時候是以澳幣計價,用台幣似乎有給到台幣300元的優惠)

記得要安裝以下軟體:

  1. RStudio開源版
  2. R軟體

基礎篇還算簡單,雖然是英文授課,講師會一而再,再而三地說明遇到困難的時候該怎麼辦,就怕你會迷路。數學翻成英文會需要查一下,但還在能理解的數學範圍內。分別教了算數、變數(variables)、Vector,以下提供在console的小小練習:(有些數學專有名詞,我不太清楚台灣的翻譯,所以我就只放英文)

1.基本運算式
加:2 + 5
減:4 - 3
除:10 / 2
乘:5 * 2
次方:2^5
餘數:9 %% 4
有括號先運算:10 * (5 + 3) / 2

2.設定變數,名稱可以出現點(money.saving)、底線(money_saving)或大寫字(moneySaving),但以點最為常見。

money.saving <- 200  #設定money.saving=200
interest <- 30  #設定interest=30
money.saving <- money.saving + interest  #設定money.saving=money.saving+interest
money.saving  #問money.saving是什麼

最後就會得到230的答案囉!

3.vector是單列矩陣,可以裝數字、文字、邏輯。c()則是combine function。

v1 <- c(27,25,32,34,39)
class(v1)                #輸出會出現numeric

v2 <- c('世','大','運')
class(v2)                #輸出會出現character

v3 <- c(TRUE,FALSE)
class(v3)                #輸出會出現logical

要注意的是這三種不能混用在一個vector,會把R給逼瘋T_T

如果要幫vector中的矩陣加上名字,可以使用names()。

people <- c(5,3,4)   #這次出遊,每個家庭會有不同人數來參加。
people               #5 3 4

names(people) <- c('David','May','John')  #家庭名稱分別為David、May、John
people

最就會得到以下結果囉!
David May John
5 3 4

4.vector運算、擷取特定元素(符號和運算式相同,只是變成矩陣而已)

v1 <- c(1,1,1)
v2 <- c(4,7,2)

v1 + v2
v1 - v2
v1 * v2
v2 / v1

函式運算:可參考R Reference Card

sum(v2)  #總和
sd(v2)   #標準差
var(v2)  #變異數
max(v2)  #最大數
min(v2)  #最小數
prod(v2) #元素全部相乘
v1 <- c(27,25,32,34,39)
v2 <- c('世','大','運')

v1[2]  #25
v2[2]  #大
v1[c(1,2)]  #27 25
v2[c(2,3)]  #'世' '大'

v1[2:4]  #25 32 34

names(v1) <- c('a','b','c','d','e')
v1['a']  #27
v1[c('e','d','c')]   

就會得到以下結果囉!
e d c
39 34 32

5.vector比大小

v1[v1>30] #只出現結果 

得到:
c d e
32 34 39

v1>30 #出現邏輯判讀結果

得到:
a b c d e
FALSE FALSE TRUE TRUE TRUE

6.遇到問題想求救

help(vector)
??vector
help.search('vector')

7.比較判讀

9 > 10 #大於,所以會輸出FALSE
9 >= 9 #大於等於,所以會輸出TRUE
9 < 10 #小於,所以會輸出TRUE
9 <= 9 #小於等於,所以會輸出TRUE
9 != 8 #不等於,所以會輸出TRUE
9 != 9 #不等於,所以會輸出FALSE
9 == 9 #等於,所以會輸出TRUE

【延伸閱讀】
1.就是要學R #1:Basic 基礎篇
2.就是要學R #2:Matrix 矩陣篇
3.就是要學R #3:Data Frame 資料框架篇
4.就是要學R #4:List 列表篇
5.就是要學R #5:Import & Export 匯入匯出篇(csv & excel)
6.就是要學R #6:Import & Export 匯入匯出篇(SQL & web scraping)
7.就是要學R #7:R programming 基礎篇
8.就是要學R #8:R Programming 進階篇
9.就是要學R #9:資料前處理篇(dplyr、tidyr)
10.就是要學R #10:ggplot2幫你搞定資料視覺化
11.就是要學R #11:資料視覺化應用篇(ggplot2、Plotly)
12.就是要學R #12:機器學習之線性迴歸實作篇
13.就是要學R #13:機器學習之邏輯迴歸實作篇
14.就是要學R #14:機器學習之K Nearest Neighbor(KNN)實作篇
15.就是要學R #15:機器學習之決策樹、隨機森林實作篇
16.就是要學R #16:機器學習之Support Vector Machine(SVM)實作篇
17.就是要學R #17:機器學習之K Means Clustering實作篇
18.就是要學R #18:機器學習之自然語言處理(NLP)實作篇
19.就是要學R #19:機器學習之類神經網路(Neural Net)實作篇

Comments

comments powered by Disqus