๋น ๋ฐ์ดํฐ ๋ถ์ ๋๊ตฌ R (2)
๋ฐ์ดํฐํ์ ์ข ๋ฅ
๋ ผ๋ฆฌํ(Logical):True(์ฐธ), False(๊ฑฐ์ง)์ ๊ฐ์ ๊ฐ์ง
1 <- TRUE
class(1)
[1] "logical"
# ๋ณ์ 1์ TRUE๊ฐ์ ๋์
ํ ๋ฐ์ดํฐ ํ์ ์ถ๋ ฅ์ "locial"์ถ๋ ฅ
์ซ์ํ(numeric): ์ค์๋ฅผ ํํํ๊ธฐ ์ํ ๋ฐ์ดํฐํ
n<-3.1415
class(n)
[1] "numeric"
์ ์ํ(integer): ์์์ ์ด ์๋ ์ ์๋ฅผ ํํ
i<-1147L
class(i)
[1] "integer"
# ์์์ ์ด ์๋ ์ ์ ํํ์ ๋์ 'L'์ ์ ๋๋ค
๋ณต์์ํ(complex): ๋ณต์์๋ฅผ ํํํ๊ณ ์ ํ ๋ ์ฌ์ฉ
c<-3+5i
class(c)
[1] "complex"
# '3'์ ์ค์, '5i'๋ ํ์๋ฅผ ๋ํ๋ธ๋ค
๋ฌธ์ํ(character):๋ฌธ์ ๋๋ ๋ฌธ์์ด์ ํํํ ๋ ์ฌ์ฉ
s<-"hello"
class(s)
[1] "character"
์ํ(raw): ์ปดํจํฐ ์์คํ ์์ ํํํ๋ ๊ธฐ๋ณธ ํํ
r<-charRoRaw("hello")
r
[1] 68 65 6c 6c 6f
# charToRaw = ๋ฌธ์๋ฅผ ์ํ์ผ๋ก ๋ฐ๊ฟ์ฃผ๋ ํจ์
R๊ฐ์ฒด
๋ฐฑํฐ(Vectors)
- ๋ค์์ ๊ฐ์ ๋ด๊ณ ์๋ R๊ฐ์ฒด
- ๋ด๋ถ ๋ฐ์ดํฐ๋ ํ ๊ฐ์ง ๋ฐ์ดํฐํ์ผ๋ก ํต์ผ
v<-c("hello",3.14) #๋ฌธ์ํ๊ณผ ์ซ์ํ ํผ์ฉ
class(v)
[1] "character" #๋ฌธ์ํ์ผ๋ก ๋ณํ
v
[1] "hello" "3.14"
# c๋ ๋ฐฑํฐ๋ฅผ ์์ฑํด์ฃผ๋ ํจ์์ด๋ค
๋ฆฌ์คํธ(lists) :์๋ก ๋ค๋ฅธ ์ ํ์ ๋ฐ์ดํฐ๋ฅผ ๋ด์ ์ ์๋ ๊ฐ์ฒด
l<-list("hello", 3.14) #๋ฌธ์ํ๊ณผ ์ซ์ํ ํผ์ฉ
class(l)
[1] "list" #๋ฆฌ์คํธํ์ผ๋ก ์ถ๋ ฅ
v
[[1]]
[1] "hello" #๋ฌธ์ํ์ผ๋ก ์ถ๋ ฅ
[[2]]
[1] 3.14 #์ซ์ํ์ผ๋ก ์ถ๋ ฅ
ํ๋ ฌ(matrices): ํ๊ณผ ์ด๋ก ์ด๋ฃจ์ด์ง 2์ฐจ์ ๋ฐ์ดํฐ ์งํฉ
m<-matrix(c(2,3,1,5),nrow=2,ncol=2)
class(m)
[1] "matrix"
m
[,1][,2]
[1,] 2 1
[2,] 3 5
๋ฐฐ์ด(arrays): ๋ค์ฐจ์์ผ๋ก ๊ตฌ์ฑ๋ ๋ฐ์ดํฐ ์งํฉ
- ์ฐจ์์ ์ค์ ์ ๋ฐ๋ฅธ ๋ฐฐ์ด์ ๋ณํ
- 1์ฐจ์์ผ๋ก ์ค์ -> ๋ฐฐ์ด(Arrays)๋ก ์ทจ๊ธ
- 2์ฐจ์์ผ๋ก ์ค์ -> ํ๋ ฌ(Matrix)๋ก ์ทจ๊ธ
- 3์ฐจ์ ์ด์์ผ๋ก ์ค์ -> ๋ฐฐ์ด(Arrays)๋ก ์ทจ๊ธ
ar1<-array(c(2,3,1,5),dim=c(4))
ar2<-array(c(2,3,1,5),dim=c(2,2))
ar3<-array(c(2,3,1,5),dim=c(1,2,2))
class(ar1)
[1] "array"
class(ar2)
[1] "matrix"
class(ar3)
[1] "array"
ar1 #1์ฐจ์
[1] 2 3 1 5
ar2 #2์ฐจ์
[,1][,2]
[1,] 2 1
[2,] 3 5
ar3 #3์ฐจ์
, , 1
[,1][,2]
[1,] 2 3
, , 2
[,1][,2]
[1,] 1 5
์์ธ(factors)
- "๋ฒ์ฃผ"๋ผ๊ณ ๋ ๋ถ๋ฆ
- ๋ฐ์ดํฐ์ ๊ฐ(value)๊ณผ ๋ ๋ฒจ(lavel)์ ํจ๊ป ํํ
- ๊ฐ์ฒด๊ฐ ๊ตฌ์ถ๋๋ฉฐ ๋ฐ์ดํฐ๊ฐ ์๋์ผ๋ก ๋ถ์๋๋ฏ๋ก ํต๊ณ์ ๋ชจ๋ธ๋ง๊ณผ ๋ถ์์ ์ ์ฉ
v<-c("kim","kim","han","lee","lee","kim")
vf<-factor(v)
vf
[1] kim kim han lee lee kim
Levels: han kim lee
class(vf)
[1] "factor"
๋ฐ์ดํฐ ํ๋ ์(data frames)
- ํ์ ํํ๋ก ์ ๋ฆฌ๋ ๋ฐ์ดํฐ ๊ฐ์ฒด์ ์ผ์ข
- ์ด(column)๊ณผ ํ(row)์ ์ด๋ฆ(name)์ ์ง์ ๊ฐ๋ฅ
- ์ด๋ง๋ค ์๋ก ๋ค๋ฅธ ๋ฐ์ดํฐํ์ ๊ฐ์ง ์ ์์
- ์ซ์ํ(numeric), ์์ธ(factor), ๋ฌธ์ํ(character)์ธ์ ๋ค๋ฅธ ๋ฐ์ดํฐ๋ฅผ ์ ์ฅํ ์ ์์
- ์ด๋ง๋ค ๊ฐ์ ์์ ๋ฐ์ดํฐ๋ฅผ ํฌํจํ์ฌ์ผ ํจ
v<-c("kim","kim","han","lee","lee","kim")
vf<-factor(v)
vf
[1] kim kim han lee lee kim
Levels: han kim lee
class(vf)
[1] "factor"
summary(df)
gender height weight age
femail :2 Min, :159.0 Min. :49 Min. :25.00
mail :1
...
์ฐ์ ์ฐ์ฐ์(Arithmetic Operators)
a<-c(6,7)
b<-c(4,3)
a+b
[1] 10 10 # 6+4 7+3
a-b
[1] 2 4 # 6-4 7-3
...
๊ด๊ณ ์ฐ์ฐ์(Relational Operators)
a<-c(2,3,4)
b<-c(3,3,3)
a>b
[1] FALSE FALSE TRUE #2>3 3>3 4>3
a<b
[1] TRUE FALSE FALSE #2<3 3<3 4<3
...
๋ ผ๋ฆฌ ์ฐ์ฐ์(Logical Operators)
a<-c(TRUE, FALSE, FALSE)
b<-c(TRUE, TRUE, FALSE)
a&b
[1] TRUE FALSE FALSE #TRUE&TRUE FALSE&TRUE FALSE&FALSE
a|b
[1] TRUE TRUE FALSE
a&&b
[1] TRUE #๋ฐฑํฐ์ ์ฒซ๋ฒ์งธ๋ง ๋น๊ต
a||b
[1] TRUE #๋ฐฑํฐ์ ์ฒซ๋ฒ์งธ๋ง ๋น๊ต
๋์ (ํ ๋น)์ฐ์ฐ์(Assignment Operators)
๊ธฐํ ์ฐ์ฐ์(Miscellaneous Operators
3:8
[1] 3 4 5 6 7 8
"pizza"%in%c("pizza","chicken") #๋ฌธ์์ด ํฌํจ ์ฌ๋ถ๋ฅผ ๊ฒ์
[1] TRUE
"icecream"%in%c("pizza","chicken") #๋ฌธ์์ด ํฌํจ ์ฌ๋ถ๋ฅผ ๊ฒ์
[1] FALSE
a<-matrix(c(1,2,3,4),nrow=2,n=col=2) #ํ๋ ฌ a์์ฑ
b<-matrix(c(4,3,2,1),nrow=2,n=col=2) #ํ๋ ฌ b์์ฑ
a*b
[,1][,2]
[1,] 4 6
[2,] 6 4
a%*%b
[,1][,2]
[1,] 13 5
[2,] 20 8
'๐ป IT > ๋น ๋ฐ์ดํฐ' ์นดํ ๊ณ ๋ฆฌ์ ๋ค๋ฅธ ๊ธ
๋ฐ์ดํฐ ํต๊ณ ๋ถ์(1) (1) | 2024.04.23 |
---|---|
๋น ๋ฐ์ดํฐ ๋ถ์ ๋๊ตฌ R (3) (1) | 2024.04.20 |
๋น ๋ฐ์ดํฐ ๋ถ์ ๋๊ตฌ R (1) (0) | 2024.04.19 |
๋น ๋ฐ์ดํฐ ์ ์ฅ์ (1) | 2024.04.18 |
๋น ๋ฐ์ดํฐ์ ์์ง (0) | 2024.04.17 |