2015年12月29日 星期二

R語言的基本資料型態

R語言的變數有以下幾種基本的資料型態(data types):
  1. 整數(Integer)
  2. 浮點數(Number, real, double)
  3. 複數(Complex)
  4. 字串(Character)
  5. 邏輯值(Logical)
以下依序介紹每種資料型態的用法


1. 整數(Integer)

把一個整數3存入變數i的方法
  • i <- as.integer(3)
  • i
    [1] 3
確認變數i是不是整數
  • class(i)
    [1] "integer"
  • is.integer(i)
    [1] TRUE
在R tutorial中有介紹一些其他的狀況,但是一般來說不會這樣搞

2. 浮點數(Number, real, double)

把一個浮點數存入變數x的方式
  • x <- 41
  • class(x)
    [1] "numeric"
確認變數x是不是浮點數
  • is.integer(x)
    [1] FALSE
  • is.numeric(x)
    [1] TRUE
給一個數字給變數,預設為number而不會是integer

3. 複數(Complex)

輸入一個複數
  • cx <- 9 + 2i
  • cx
    [1] 9+2i
  • is.complex(cx)
    [1] TRUE
  • is.numeric(cx)
    [1] FALSE
  • is.integer(cx)
    [1] FALSE
或是可以寫成更複雜的型態
  • cx <- complex(real = c(1,2), imaginary = c(3,4))
  • cx[1] 1+3i 2+4i

4. 字串(Character)

最簡單輸入字串的方式
  • ch <- "A string"
  • ch
    [1] "A string"
  • class(ch)
    [1] "character"
如果希望輸入的數字是字串的話
  • ch <- as.character(3.14) 
  • ch
    [1] "3.14"
  • class(ch)
    [1] "character"
兩個字串可以連接在一起
> fname = "Kawhi"; lname ="Leonard" 

> paste(fname, lname) 

[1] "Kawhi Leonard"

甚至是像C語言的格式化輸出
> sprintf("This costs %s %d dollars.", "Zoe", 512) 

[1] "This costs Zoe 512 dollars."



擷取字串中間的某些部分

> substr("Welcome to Taiwan!!", start=12, stop=17)
[1] "Taiwan"

還可以取代字串某些字,例如說
> sub("Taiwan", "Formosa", "Welcome to Taiwan!!") 
[1] "Welcome to Formosa!!"


5. 邏輯值(Logical)

把判斷1>2的結果放在變數j裡面
> j <- 1 > 2
> j
[1] FALSE

還可以做一些邏輯的運算,參考這邊
> u = TRUE; v = FALSE 
> u & v          # u AND v 
[1] FALSE 
> u | v          # u OR v 
[1] TRUE 
> !u             # negation of u 
[1] FALSE

R透過操作這些變數來達成計算目的

_EOF_

沒有留言:

張貼留言