[R] 데이터 확인하기

[R] 데이터 확인하기

R에서는 데이터를 표현하기 위해 DataFrame이라는 자료형을 제공합니다. DataFrame을 이해하고 잘 다루는 것은 데이터 처리에 있어서 가장 기본이 되는 작업입니다.

#01. 패키지 로드 및 샘플 데이터프래임 구성

패키지 로드하기

REPO_URL <- "https://cran.seoul.go.kr/"
if (!require(readxl)) install.packages("readxl", repos=REPO_URL)
library(readxl)

데이터 프레임 구성하기

## 저장할 파일 이름
filename <- 'helloworld.xlsx'

## 엑셀 파일 다운로드 받기
download.file("http://data.hossam.kr/grade.xlsx", filename, mode='wb')

## 다운로드 받은 파일을 데이터 프레임으로 변환
성적표xlsx <- read_excel(filename, sheet="grade")

## 결과 출력
성적표xlsx
💻 출력결과

/images/posts/2022/1215/0.png

#02. 데이터의 개요 확인

1) 각 열의 이름 확인

name() 함수에 확인하고자 하는 데이터프레임을 파라미터로 전달한다.

컬럼 이름 확인하기

컬럼이름 <- names(성적표xlsx)
컬럼이름
💻 출력결과
'이름''학년''성별''국어''영어''수학''과학'

2) 데이터의 크기 확인 (행,열의 수 구하기)

dim() 함수에 확인하고자 하는 데이터프레임을 파라미터로 전달한다.

데이터 프레임의 행,열 수 구하기

크기 <- dim(성적표xlsx)
크기
💻 출력결과
5  7

3) 상위 n건 확인하기

head() 함수에 확인하고자 하는 데이터프레임과 조회하고자 하는 행의 수를 파라미터로 전달한다.

두 번째 파라미터를 생략할 경우 6건을 기본으로 가져온다.

상위 3건 가져오기

상위데이터 <- head(성적표xlsx, 3)
상위데이터
💻 출력결과

/images/posts/2022/1215/1.png

4) 하위 n건 확인하기

tail() 함수에 확인하고자 하는 데이터프레임과 조회하고자 하는 행의 수를 파라미터로 전달한다.

두 번째 파라미터를 생략할 경우 6건을 기본으로 가져온다.

  • 하위 n건 가져오기
하위데이터 <- tail(성적표xlsx, 3)
하위데이터
💻 출력결과

/images/posts/2022/1215/2.png

#03. 데이터 접근하기

1) 열 단위로 접근하기

데이터프레임이름$열이름 형식으로 접근한다.

  • print() 함수를 사용하여 출력 하기
print(성적표xlsx$국어)
💻 출력결과
[1]  98  88  92  63 120

jupyter에서 출력하기

성적표xlsx$국어
💻 출력결과
98  88  92  63  120

2) 행 단위로 접근하기

a) 특정 행 하나만 가져오기

데이터프레임이름['인덱스이름', ] 혹은 데이터프레임이름[인덱스번호, ]

이름 뒤에 콤마(,)주의. 인덱스번호는 1부터 시작하고 인덱스 이름은 문자열 형태로 지정한다.

1번째 행의 데이터 접근하기

성적표xlsx[1,]
💻 출력결과

/images/posts/2022/1215/3.png

b) 복수의 행을 가져오기

가져올 행 이름이나 인덱스 번호를 벡터로 구성한다.

1번째, 3번째 행 가져오기

성적표xlsx[c(1, 3),]
💻 출력결과

/images/posts/2022/1215/4.png

c) 가져올 행의 구간을 지정하기

데이터프레임이름[시작위치:끝위치, ] 형식

2번째부터 4번째 행 가져오기

성적표xlsx[2:4, ]
💻 출력결과

/images/posts/2022/1215/5.png

3) 행을 기준으로 열을 일부만 가져오기

행을 가져오는 구문에서 콤마(,)뒤에 열 정보를 벡터 형식으로 나열한다.

  • 철수행(1번)에서 이름,영어,수학열만 조회
성적표xlsx[1, c('이름', '영어', '수학')]
💻 출력결과

/images/posts/2022/1215/6.png

1, 3번째 행에서 이름, 영어, 수학 열만 조회하기

성적표xlsx[c(1, 3), c('이름', '영어', '수학')]
💻 출력결과

/images/posts/2022/1215/7.png

4) 단일 값에 접근하기

데이터프레임이름['인덱스이름', '컬럼이름'] 혹은 데이터프레임이름[인덱스번호, '컬럼이름'] 형식을 사용하여 행,열의 개념으로 접근한다.

1행의 국어 점수 확인

성적표xlsx[1, '국어']
💻 출력결과

/images/posts/2022/1215/8.png

호쌤(이광호)'s Picture

About 호쌤(이광호)

메가스터디IT아카데미에서 Java, Spring, Python, Frontend 등을 강의하는 IT 전문 강사이자 프리렌서 개발자 입니다.
https://www.youtube.com/@hossam-codingclub

Seoul, Korea http://www.hossam.kr