R - 데이터 유형: 초보자를 위한 종합 가이드

안녕하세요, R 프로그래밍에 도전하는 당신! R 데이터 유형의 세계로의 흥미로운 여정을 안내하게 되어 기쁩니다. 프로그래밍을 가르치는 지식을 몇 년 동안 쌓아온 저는 데이터 유형을 이해하는 것은 소설을 쓰기 전에 알파벳을 배우는 것과 같다고 말씀드릴 수 있습니다. 이는 기본적인 것이며, 가능한 한 재미있고 쉽게 가르쳐드리겠습니다. 그麼, 시작해봅시다!

R - Data Types

벡터: 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