# 패키지
#install.packages('ggplot2')
# 마크다운에서 실행 x
library(ggplot2)
data("diamonds")
df <- diamonds
df
## # A tibble: 53,940 × 10
##    carat cut       color clarity depth table price     x     y     z
##    <dbl> <ord>     <ord> <ord>   <dbl> <dbl> <int> <dbl> <dbl> <dbl>
##  1  0.23 Ideal     E     SI2      61.5    55   326  3.95  3.98  2.43
##  2  0.21 Premium   E     SI1      59.8    61   326  3.89  3.84  2.31
##  3  0.23 Good      E     VS1      56.9    65   327  4.05  4.07  2.31
##  4  0.29 Premium   I     VS2      62.4    58   334  4.2   4.23  2.63
##  5  0.31 Good      J     SI2      63.3    58   335  4.34  4.35  2.75
##  6  0.24 Very Good J     VVS2     62.8    57   336  3.94  3.96  2.48
##  7  0.24 Very Good I     VVS1     62.3    57   336  3.95  3.98  2.47
##  8  0.26 Very Good H     SI1      61.9    55   337  4.07  4.11  2.53
##  9  0.22 Fair      E     VS2      65.1    61   337  3.87  3.78  2.49
## 10  0.23 Very Good H     VS1      59.4    61   338  4     4.05  2.39
## # ℹ 53,930 more rows
#벡터
x <- c(1, 2, 3)
mode(x)
## [1] "numeric"
is.numeric(x)
## [1] TRUE
is.logical(x)
## [1] FALSE
is.character(x)
## [1] FALSE
length(x)
## [1] 3
#수치형 벡터
a <- 10
a
## [1] 10
class(a)
## [1] "numeric"
#두 개 이상의 벡터
x <- c(1, 10)
y <- c("apple", "melon")
xy <- c(x, y)
xy
## [1] "1"     "10"    "apple" "melon"
#수치형 + 문자형 결합에선 각각 고유한 데이터 유형으로 출력되지 않음.
1:5
## [1] 1 2 3 4 5
seq(from=1, to=5, by=1)
## [1] 1 2 3 4 5
a <- c(1, 3, 1, 3)
a
## [1] 1 3 1 3
class(a)
## [1] "numeric"
a * 3
## [1] 3 9 3 9
b <- factor(c(1, 3, 1, 3))
b
## [1] 1 3 1 3
## Levels: 1 3
class(b)
## [1] "factor"
levels(b)
## [1] "1" "3"
b * 3
## Warning in Ops.factor(b, 3): '*' not meaningful for factors
## [1] NA NA NA NA
#인덱스
x <- c("a", "b", "c")
x[1]
## [1] "a"
x[-1]
## [1] "b" "c"
x[c(1,2)]
## [1] "a" "b"