R - 데이터 유형: 초보자를 위한 종합 가이드
안녕하세요, R 프로그래밍에 도전하는 당신! R 데이터 유형의 세계로의 흥미로운 여정을 안내하게 되어 기쁩니다. 프로그래밍을 가르치는 지식을 몇 년 동안 쌓아온 저는 데이터 유형을 이해하는 것은 소설을 쓰기 전에 알파벳을 배우는 것과 같다고 말씀드릴 수 있습니다. 이는 기본적인 것이며, 가능한 한 재미있고 쉽게 가르쳐드리겠습니다. 그麼, 시작해봅시다!
벡터: R의 기본적인 건축 블록
벡터는 R에서 가장 간단하고 기본적인 데이터 구조입니다. 이를 동일한 유형의 데이터가 들어 있는 상자의 줄로 생각해보세요.
벡터 생성
# 숫자 벡터
numbers <- c(1, 2, 3, 4, 5)
# 문자 벡터
fruits <- c("apple", "banana", "cherry")
# 논리 벡터
is_raining <- c(TRUE, FALSE, TRUE, FALSE)
이 예제에서 c()
는 벡터를 생성하는 결합 함수입니다. 이는 우리의 데이터를 함께 모으는 마법의 지팡이와 같습니다!
벡터 요소 접근
# fruits 벡터의 두 번째 요소 출력
print(fruits[2]) # 출력: "banana"
# 첫 번째와 세 번째 요소 출력
print(fruits[c(1, 3)]) # 출력: "apple" "cherry"
정사각형 괄호 []
를 사용하여 특정 요소에 접근합니다. 이는 우리의 상자 줄에서 필요한 것을 꺼내는 것과 같습니다.
리스트: 데이터 구조의 스위스 아ーノ이 knife
리스트는 다양한 유형의 데이터, 심지어 다른 리스트까지 포함할 수 있는 슈퍼 벡터입니다!
리스트 생성 및 접근
my_list <- list(
name = "Alice",
age = 30,
likes = c("pizza", "coding", "cats")
)
# 리스트 요소 접근
print(my_list$name) # 출력: "Alice"
print(my_list[[2]]) # 출력: 30
print(my_list[["likes"]][2]) # 출력: "coding"
리스트는 $
또는 [[]]
를 사용하여 요소에 접근합니다. 이는 다양한 칸을 가진 가방을 여는 것과 같습니다!
행렬: 2차원 데이터 배치
행렬은 스프레드시트와 같습니다: 행과 열로 구성되어 있으며, 모든 데이터는 동일한 유형입니다.
행렬 생성 및 조작
# 3x3 행렬 생성
my_matrix <- matrix(1:9, nrow = 3, ncol = 3)
# 행렬 출력
print(my_matrix)
# 2행 3열의 요소 출력
print(my_matrix[2, 3]) # 출력: 8
행렬은 [행, 열]
표기법을 사용하여 접근합니다. 이는 영화院的 자리를 찾는 것과 같습니다!
배열: 다차원 데이터 구조
배열은 쌓인 행렬과 같으며, 다차원 데이터를 표현하는 데 완벽합니다.
배열 생성 및 작업
# 2x3x2 배열 생성
my_array <- array(1:12, dim = c(2, 3, 2))
# 배열 출력
print(my_array)
# 1행 2열 2행렬의 요소 출력
print(my_array[1, 2, 2]) # 출력: 10
배열은 행렬 표기법을 다차원으로 확장합니다. 이는 3D 큐브를 탐색하는 것과 같습니다!
요인: 카테고리 데이터 처리
요인은 카테고리 데이터, 예를 들어 항목을 그룹화하거나 수준을 표현하는 데 사용됩니다.
요인 생성 및 사용
# 요인 생성
sizes <- factor(c("small", "medium", "large", "medium", "small"))
# 요인 출력
print(sizes)
# 요인의 수준 출력
print(levels(sizes))
요인은 명확한 카테고리 데이터에 매우 유용합니다. 이를 파일 시스템의 레이블로 생각해보세요!
데이터 프레임: 데이터 분석의 중심
데이터 프레임은 R의 스프레드시트와 같으며, 각 열에 다양한 유형의 데이터를 저장할 수 있습니다.
데이터 프레임 생성 및 조작
# 데이터 프레임 생성
students <- data.frame(
name = c("Alice", "Bob", "Charlie"),
age = c(22, 25, 23),
grade = c("A", "B", "A")
)
# 데이터 프레임 출력
print(students)
# 특정 열 접근
print(students$age)
# 조건에 따라 행 선택
print(students[students$age > 23, ])
데이터 프레임은 벡터와 리스트의 장점을 결합한 것입니다. 이는 잘 정리된 파일 캐비닛과 같습니다!
메서드 표
각 데이터 유형에 대한 일반적인 메서드 표입니다:
데이터 유형 | 생성 메서드 | 접근 메서드 | 일반 함수 |
---|---|---|---|
벡터 | c() |
[] |
length() , sum() , mean()
|
리스트 | list() |
$ , [[]]
|
names() , unlist()
|
행렬 | matrix() |
[행, 열] |
dim() , t() , rowSums()
|
배열 | array() |
[,,] |
dim() , aperm()
|
요인 | factor() |
[] |
levels() , nlevels()
|
데이터 프레임 | data.frame() |
$ , []
|
nrow() , ncol() , subset()
|
기억하세요, 연습이 완벽을 이루는 것입니다! R 콘솔에서 이 데이터 유형을 실험해보지 마세요. 이는 레고 블록을 조립하는 것과 같습니다 – 더 많이 빌드할수록 이들이 어떻게 맞물리는지 더 잘 이해할 것입니다.
이 튜토리얼을 마무리하면서, R의 데이터 유형에 대해 더 자신감 있게 느끼셨기를 바랍니다. 각 데이터 유형은 그 자체로 강점을 가지고 있으며, 언제 어떤 것을 사용해야 하는지 알아내는 기술은 데이터 분석 여정에서 큰 도움이 될 것입니다.
계속 코딩하시고, 호기심을 가지시고, 기억하세요 – R의 세계에서 데이터는 당신의 놀이터입니다! 즐거운 프로그래밍 되세요!
Credits: Image by storyset