R로 데이터 불러오기와 저장하기
- R
- 2024. 7. 26.
R로 데이터 불러오기와 저장하기
이번 포스팅에서는 R을 사용해 데이터를 불러오고 저장하는 방법에 대해 이야기해보려고 합니다. 데이터 분석의 첫 걸음은 데이터를 준비하는 것에서 시작하죠. R에서는 다양한 형식의 데이터를 쉽게 불러오고, 분석 후 저장할 수 있습니다. 엑셀파일,html, 데이터베이스, rds 파일 4가지에 대해서 저장, 불러오는 방법에 대해 하나씩 살펴보겠습니다.
데이터 불러오기
1. CSV 파일 불러오기
CSV(Comma Separated Values) 파일은 가벼워서 흔히 사용하는 데이터 파일 형식 중 하나입니다. R에서는 read.csv()
함수를 사용해 CSV 파일을 쉽게 불러올 수 있습니다. 예를 들어, "data.csv"라는 파일을 불러오려면 다음과 같이 합니다.
data <- read.csv("data.csv")
read.csv 함수는 CSV 파일을 데이터 프레임(data frame)으로 불러오며, 데이터 분석을 위해 바로 사용할 수 있습니다.
2. Excel 파일 불러오기
Excel 파일도 데이터 분석에서 자주 사용하는 형식입니다. R에서는 readxl
패키지를 사용해 Excel 파일을 불러올 수 있습니다. 패키지가 없다면 패키지를 설치하고 불러온 후, read_excel()
함수를 사용합니다.
install.packages("readxl")
library(readxl)
data <- read_excel("data.xlsx")
read_excel()
함수는 Excel 파일의 시트를 지정할 수 있으며, 다양한 옵션을 통해 필요한 데이터만 선택적으로 불러올 수 있습니다. 다양한 옵션에 대한 자세한 사항은 추후 포스팅을 하겠습니다.
3. 데이터베이스에서 데이터 불러오기
R은 데이터베이스와의 연동도 매우 쉽습니다. DBI
패키지와 특정 데이터베이스용 패키지(RMySQL, RPostgreSQL 등)를 사용해 데이터베이스에 연결할 수 있습니다. 만약 MySQL 데이터베이스에서 데이터를 불러온다면 다음과 같이 할 수 있습니다:
install.packages("DBI")
install.packages("RMySQL")
library(DBI)
library(RMySQL)
#데이터베이스 연결
con <- dbConnect(RMySQL::MySQL(),
dbname = "database_name",
host = "host_address",
user = "username",
password = "password")
#sql 불러오기
data <- dbGetQuery(con, "SELECT * FROM table_name")
#mysql 종료
dbDisconnect(con)
dbConnect()함수를 통해 Mysql에 연결하고 dbGetQuery를 통해 데이터를 불러옵니다.
mysql을 종료하고 싶다면 dbDisconnect()을 이용합니다.
4. 웹 스크래핑으로 데이터 불러오기
웹에서 데이터를 직접 불러올 수도 있습니다. 예를 들어, 웹 페이지의 HTML 테이블을 불러오거나 API를 통해 데이터를 가져올 수 있습니다. rvest
패키지를 사용하면 웹 스크래핑을 쉽게 할 수 있습니다:
install.packages("rvest")
library(rvest)
url <- "https://example.com/data.html"
web_data <- read_html(url) %>%
html_table() %>%
.[[1]]
데이터 저장하기
데이터를 분석한 후 결과를 저장하는 것도 매우 중요합니다. R에서는 다양한 형식으로 데이터를 저장할 수 있습니다.
CSV로 저장하기
가장 흔히 사용하는 형식은 CSV입니다. write.csv()
함수를 사용해 데이터 프레임을 CSV 파일로 저장할 수 있습니다:
write.csv(data, "result.csv", row.names = FALSE)
write.csv함수를 통해서 csv 파일을 저장합니다. 위 코드는 "result.csv" 파일로 저장합니다. row.names = FALSE
옵션으로 하면 행 이름을 저장하지 않도록 할 수 있습니다.
excel로 저장하기
Excel 파일로 저장하고 싶다면 writexl
패키지를 사용할 수 있습니다:
install.packages("writexl")
library(writexl)
write_xlsx(data, "result.xlsx")
write_xslx를 이용해 데이터 프레임을 "result.xlsx" 파일로 저장했습니다.
html 저장하기
html로 저장하고 싶다면 htmlTable이라는 패키지를 통해 htmlTable 형식으로 변환 후 html로 저장합니다.
install.packages("htmlTable")
library(htmlTable)
new_data <- data.frame(titles = titles)
# 데이터프레임 htmlTable로 변환
html_content <- htmlTable(new_data, header = c("News Titles"),align = "l", css.cell = "padding: 5px; border: 1px solid black;")
# HTML 구조 확인
print(html_content)
R 데이터 형식으로 저장,불러오기
R에서는 데이터를 R 전용 형식으로 저장할 수도 있습니다. saveRDS()
와 readRDS()
함수를 사용하면 R 객체를 파일로 저장하고 불러올 수 있습니다:
saveRDS(data, "data.rds")
loaded_data <- readRDS("data.rds")
이 방법은 R 객체를 그대로 저장하고 불러옵니다. 즉, 리스트, 모델 같은 여타 파일로 저장하기 어려운 데이터를 저장하고 불러오는데 사용할 수 있습니다. 데이터 프레임뿐만 아니라 리스트, 모델 등 R 객체라면 모두 저장할 수 있습니다.
마치며
R은 다양한 형식의 데이터를 불러오고 저장하는 데 용이합니다. 호환성이 좋은 편이죠. CSV, Excel, 데이터베이스, 웹 등 다양한 데이터 소스를 쉽게 다룰 수 있으며, 분석 후 결과를 원하는 형식으로 저장할 수 있습니다. 데이터를 다루는 첫 걸음, R로 시작해보세요!
'R' 카테고리의 다른 글
[R] 결측치 처리 (0) | 2024.07.30 |
---|---|
[R] 데이터 타입 변경하기 (0) | 2024.07.29 |
R로 ROC 곡선 분석하기 (0) | 2024.07.25 |
세상 간단한 R로 웹 스크래핑하기 (0) | 2024.07.24 |
R studio 패키지 설치 오류 모음 (0) | 2024.07.20 |