11. 리스트 (aka 사전)
리스트는 벡터처럼 데이터를 담는 그릇입니다. 벡터는 같은 종류의 데이터만 입력이 가능했는데요. 리스트는 여러 종류의 데이터를 입력할 수 있습니다. 공부해봅시다.
1. 리스트 생성하기
리스트에 데이터를 입력해 봅시다. 숫자와 문자열이 함께 입력됩니다.
> a=list("PAUL",35)
> a
[[1]]
[1] "PAUL"
[[2]]
[1] 35
일반적으로 '변수명' 과 '값'을 연결하여 저장합니다. 간단한 예를 들어봅시다.
> a=list(name="PAUL", age=35)
> a
$`name`
[1] "PAUL"
$age
[1] 35
이름에는 변수명 설정 규칙이 적용됩니다(3강에서 설명). 값에는 숫자, 문자열, 진리값, NULL ,factor를 입력할 수 있습니다.
> example1=list(ex1=123, ex2="hi", ex3=FALSE, ex4=NULL)
> example1
$`ex1`
[1] 123
$ex2
[1] "hi"
$ex3
[1] FALSE
$ex4
NULL
스칼라형 뿐만 아니라 벡터형도 입력할 수 있습니다.
> example2=list(ex1=c(1,2,3), ex2=c("a","b","c"))
> example2
$`ex1`
[1] 1 2 3
$ex2
[1] "a" "b" "c"
리스트 안에 리스트를 넣을 수도 있습니다.
> a=list(kim=100, park=80)
> b=list(lee=88, song=92)
> exam_score=list(class1=a, class2=b)
> exam_score
$`class1`
$`class1`$`kim`
[1] 100
$`class1`$park
[1] 80
$class2
$class2$`lee`
[1] 88
$class2$song
[1] 92
2. 리스트내 자료에 접근하기
위에서 작성한 exam_score 내에 있는 자료에 접근해 봅시다. class1에 접근하는 방법입니다. $기호를 이용하여 접근합니다.
> exam_score$class1
$`kim`
[1] 100
$park
[1] 80
class1 내의 kim에 접근하는 방법입니다.
> exam_score$class1$kim
[1] 100
아래와 같이 다른 방법으로도 접근할 수 있습니다.
> exam_score[1]
$`class1`
$`class1`$`kim`
[1] 100
$`class1`$park
[1] 80
> exam_score["class1"]
$`class1`
$`class1`$`kim`
[1] 100
$`class1`$park
[1] 80
영상이 더 편하신 분
'R 주제 > R 기초 및 통계 강의' 카테고리의 다른 글
[R 강의] 13. 자료형 분류하기, 확인하기 (mode, typeof) (0) | 2020.03.15 |
---|---|
[R 강의] 12. 복소수 입력하는 법 (0) | 2020.03.15 |
[R 강의] 10. 논리연산자 (and, or, not) (0) | 2020.03.14 |
[R 강의] 9. 비교연산자 (>, <, >=, <=, ==, !=) (0) | 2020.03.14 |
[R 강의] 8. 진리값(TRUE,FALSE) (0) | 2020.03.14 |
댓글