R로 데이터 불러오기와 저장하기

반응형
    반응형

    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

    댓글

    Designed by JB FACTORY

    ....