✔︎ 문자열 지정하는 두 가지 방법
1) x <- character()
2) y <- ""
* 두 방법은 길이가 다르게 지정됨
x <- character()
y <- ""
# 결과
> class(x)
[1] "character"
> class(y)
[1] "character"
> length(x)
[1] 0
> length(y)
[1] 1
✔︎ 문자열 지정 - 나중에 data 추가 가능
- 문자열 지정 후 나중에 data값 입력 가능
- 기존 지정된 범위(아래 예시에서는 5개) 밖에 data 지정 가능 (중간 빈 값 NA로 나옴)
- 중간 빈 값에도 data 입력 가능
z <- c("a","1","100")
> z
[1] "a" "1" "100"
z <- character(5)
> z
[1] "" "" "" "" ""
> length(z)
[1] 5
z[3] <- "3rd"
> z
[1] "" "" "3rd" "" ""
z[7] <- "7th"
> z
[1] "" "" "3rd" "" "" NA "7th"
z[6] <- "6"
> z
[1] "" "" "3rd" "" "" "6" "7th"
> length(z)
[1] 7
✔︎ 문자열 여부 확인 및 변경
- is.character() : 문자 여부 확인
- as.character() : 숫자를 일시적으로 문자로 바꿔줌
* 만약 문자로 바꾸고 싶으면 다른 변수로 지정
n=3
m="3"
is.character(n)
[1] FALSE
is.character(m)
[1] TRUE
as.character(n)
[1] "3"
class(n)
[1] "numeric"
n2 <- as.character(n)
class(n2)
[1] "character"
✔︎ 문자열 지정 - 문자 추가되면 문자로 인식
- 숫자로만 구성되었더라도 문자가 추가되면 문자로 인식
- TRUE(=1), FALSE(=0)는 숫자로 인식
t <- c(1:2)
t2 <- c(1:2,"a")
t3 <- c(1:2,TRUE,FALSE)
t4 <- c(1:2,TRUE,FALSE,"a")
# 결과
> t
[1] 1 2
> t2
[1] "1" "2" "a"
> t3
[1] 1 2 1 0
> t4
[1] "1" "2" "TRUE" "FALSE" "a"
✔︎ 데이터프레임 - 문자 추가되면 문자로 인식
- 같은 벡터는 같은 형식으로 구성
- 숫자로만 구성되었더라도 문자가 추가되면 문자로 인식
df1 <- data.frame(n=c(1:3),letters=c("a","b","11"))
df2 <- data.frame(n=c(1:2,"c"),letters=c("a","b","11"))
# 결과
> str(df1)
'data.frame': 3 obs. of 2 variables:
$ n : int 1 2 3
$ letters: chr "a" "b" "11"
> df2 <- data.frame(n=c(1:2,"c"),letters=c("a","b","11"))
> str(df2)
'data.frame': 3 obs. of 2 variables:
$ n : chr "1" "2" "c"
$ letters: chr "a" "b" "11"