본문 바로가기
R특강/하루만에 끝내는 R 데이터프레임

[하루만에 끝내는 R 데이터프레임] 6. 데이터프레임 행과 열에 접근하기 (데이터프레임 열/행 인덱싱)

by 만다린망고 2023. 7. 6.
반응형

이번 시간에는 데이터프레임의 행과 열에 접근하는 방법을 배워봅시다. 

1교시. 강의 소개
2교시. 데이터프레임 정의하고 행이름, 열이름 바꾸기
3교시. 유용한 기본함수 (tail, head, str, dim)
4교시. 벡터의 인덱싱
5교시. 데이터 프레임 원소에 접근하기 (데이터프레임 인덱싱)
6교시. 데이터프레임 행과 열에 접근하기 (데이터프레임 열/행 인덱싱)
7교시. 데이터프레임 행 또는 열 제거, 추가, 변경하기
8교시. 특정 조건으로 데이터프레임 추리기
9교시. 여러 데이터프레임 결합하기
10교시. 엑셀파일을 데이터프레임으로 불러오기

 

먼저 데이터프레임을 하나 정의하겠습니다. 학생들의 정보를 담고 있는 데이터프레임입니다. 

 

df <- data.frame(
  name = c("John", "Emma", "Michael", "Sophia"),
  age = c(20, 19, 21, 18),
  grade = c("A", "B", "A", "A+")
)

 

위 데이터프레임을 이용하여 행에 접근하는 방법부터 배워봅시다. 

 

1. 데이터프레임 행에 접근하기

행에 접근하는 방법은 아래와 같습니다. 데이터프레임 원소의 인덱싱에서 열에 해당되는 부분을 비워주면 됩니다. 모든 열을 택하겠다는 의미입니다. 

df[행번호, ]


예시 데이터의 1행에 접근해봅시다. 

> df[1,]
  name age grade
1 John  20     A


행의 이름을 지정하면 행 이름으로도 인덱싱이 가능합니다. 

> rownames(df)=c('a','b','c','d')

> df['a',]
  name age grade
a John  20     A

 

2. 데이터프레임 열에 접근하기

데이터프레임 열에 접근하는 방법은 여러가지가 있는데요. 크게 둘로 나눌 수 있습니다. 결과를 벡터로 출력하는 방법과 데이터프레임으로 출력하는 방법입니다. 

 

1) 결과를 벡터로 출력

데이터프레임 열에 접근할 때 결과를 벡터로 출력하는 방법은 아래 세 가지가 있습니다. 

df[ ,열번호]
df[ ,'열이름']
df$열이름

먼저 열번호로 접근해봅시다. 

> df[,1]
[1] "John"    "Emma"    "Michael" "Sophia" ]

 

이번에는 열 이름으로 접근해봅시다. 

> df[,'name']
[1] "John"    "Emma"    "Michael" "Sophia"]


마지막으로 df$열이름 형태로 접근해봅시다. 

> df$name
[1] "John"    "Emma"    "Michael" "Sophia"


결과가 벡터 형태로 출력되는 것을 알 수 있습니다. 

 

이 외에 아래 두가지 방법이 더 있습니다. 이중괄호를 사용하는 방법입니다. 

df[[열번호]]
df[['열이름']]

 

2) 결과를 데이터프레임으로 출력

데이터프레임 열에 접근할 때 결과를 벡터로 출력하는 방법은 아래 두 가지가 있습니다. 

df[열번호]
df[,'열이름']


먼저 열번호로 접근해봅시다. 

> df[1]
     name
1    John
2    Emma
3 Michael
4  Sophia


이번에는 열이름으로 접근해봅시다. 

> df['name']
     name
1    John
2    Emma
3 Michael
4  Sophia


결과가 데이터프레임 형태로 출력되는 것을 알 수 있습니다. 

반응형

댓글