# III. List ----
## 1. Vector ----
# 1) numeric vector
v1 <- sample(1:15, 5, replace = T)
class(v1)
# 2) character vector
v2 <- sample(c("a","z","b","c","q"), 5, replace = T)
class(v2)
# 3) named vector
v3 <- c(n=1, m=2, a=3)
class(v3)
# 4) list
list4 <- list(nn=v1, mm=v2, aa=v3)
class(list4)
# raw data 확인
View(v1);View(v2);View(v3)
View(list4)
## 2. list ----
#+ key와 value 형태로 관리하는 연관배열
#+ 다중형 : 서로 다른 데이터 타입 저장 가능
#+ list(key 키 = value 값) **
#+ list(element 원소 = item 아이템)
xx1 <- list(name="유진우" , height=188)
class(xx1);xx1;View(xx1)
xx1$name
xx1$height
## 3. list insert ----
# 1) key와 value insert
# age = NA
xx2 <- c(xx1, list(age=NA))
View(xx2)
# addr = 창곡동
xx3 <- c(xx2, list(addr="창곡동"));xx3
class(xx3)
View(xx3)
# 특정 방의 값 조회
xx3$name
xx3[1]
xx3[4]
xx3[4] |> class()
xx3[[4]] |> class()
xx3$addr |> class()
# Test insert
xx3[1]
temp1 <- c(xx3[1],"권기범")
class(temp1)
View(temp1)
xx3[[1]]
temp2 <- c(xx3[[1]],"권기범") # *
class(temp2)
View(temp2)
# 2) value만 추가
xx3
xx3[[1]] <- c(xx3[[1]],"권기범","안태환")
xx3[[2]] <- c(xx3[[2]],178,192)
xx3[[3]] <- c(xx3[[3]],32,39)
xx3[[4]] <- c(xx3[[4]],"신도림",NA)
## 4. list selection ----
xx3
xx3[1] |> length()
xx3[[1]] |> length()
# 권기범만 조회
xx3
xx3[1]
xx3[[1]][2]
# 창곡동만 조회
xx3
xx3[4]
xx3[[4]][1]
## 5. list update ----
# 유진우: 62
# 안태환: 강변
xx3[3]
xx3[[3]]
xx3[[3]][1] <- 62
xx3[4]
xx3[[4]]
xx3[[4]][3] <- "강변"
## 6. list delete ----
# delete : data를 상대 **
# drop : 구조정보를 상대 ***
names(xx3)
xx4 <- xx3
# 구조정보에서 저장공간을 삭제 (drop)
names(xx4)
xx4
xx4[3]
xx4[3] <- NULL
# data만 삭제 (delete)
xx4
xx4[2]
xx4[2] <- NA
# 안태환 이사감, 그러나 정보공개 거부(NA)
xx4
xx4[3]
xx4[[3]]
xx4[[3]][3] <- NA
# 요약
summary(xx4)
summary(xx3)
View(xx4)
## 7. key값 변경 ----
# 1) 전체 변경
xx5 <- xx3
xx5
names(xx5) <- c("full_name","ht","at","address")
names(xx5)
xx5
# 2) 일부만 변경
# at => MBTI 변경
names(xx5)[3] <- "MBTI"
names(xx5)
# full_name => f_name
# address => addr
xx5
names(xx5)[c(1,4)] <- c("f_name","addr")
names(xx5)
R Scripts : 2. 함수 (Function) (0) | 2023.10.06 |
---|---|
R Scripts : 1. 변수 (Variables) (1) | 2023.10.04 |
RF7_Test dataset sample (0) | 2023.09.15 |
댓글 영역