R에서 xlsx 파일 읽기

Gustavo du Mortier 2023년1월30일
  1. 사용자가 가져올 파일을 지정하도록합니다
  2. openxlsx 라이브러리를 사용하여 R에서 xlsx 파일 읽기
R에서 xlsx 파일 읽기

Excel 스프레드 시트에서 데이터를 가져와 R로 가져 오는 가장 일반적인 방법은 Excel을 사용하여 데이터를.csv와 같은보다 일반적인 형식으로 저장하는 것입니다. 그러나xlsx 파일을 반복적으로 가져와야하는 경우 패키지를 사용하여 Excel 파일을 R로 직접 가져 오는 것과 같은 더 빠른 옵션이 선호됩니다.

R의 많은 패키지에는xls /xlsx 파일을 읽을 수있는 기능이 있습니다. 그중 하나가 readxl입니다. 이 패키지는 다른 패키지보다 외부 종속성이 적기 때문에 거의 모든 운영 체제에 쉽게 설치할 수 있습니다. R 환경에 추가하는 가장 간단한 방법은 다음 명령을 사용하여 전체tidyverse 라이브러리를 설치하는 것입니다.

install.packages("tidyverse")

하지만 핵심tidyverse 라이브러리가 아니기 때문에library(readxl)명령으로 명시 적으로로드해야합니다. 그러면 다음과 같이read_excel 함수를 사용하여 Excel 파일을 가져올 수 있습니다.

MySheet <- read_excel("ExcelFile.xlsx")

이전 예에서는ExcelFile.xlsx라는 스프레드 시트의 내용을MySheet라는 데이터 프레임으로 가져옵니다.

사용자가 가져올 파일을 지정하도록합니다

Excel 파일 위치를 미리 모르고 사용자가 읽을 파일을 선택하게하려면 파일 경로를 명시 적으로 지정하는 대신file.choose()를 사용할 수 있습니다.

MySheet <- read_excel(file.choose())

read_excel()함수에는 가져올 특정 시트를 지정하거나 빈 셀 대신NAs를 나타내는 값을 지정하는 다른 매개 변수가 있습니다. 이 예에서는data라는 시트를 가져오고 내용이NA 인 셀이NAs로 해석됨을 나타냅니다.

MySheet <- read_excel("ExcelFile.xlsx", sheet = "data", na = "NA")

openxlsx 라이브러리를 사용하여 R에서 xlsx 파일 읽기

Excel 파일을 R로 읽는 데 사용할 수있는 또 다른 패키지는openxlsx입니다. 이 패키지는readxl과 같이 xlsx 파일 읽기 및 쓰기를 단순화하며 Java, Perl 또는 기타 외부 라이브러리에 의존하지 않습니다. Rcpp를 사용하는openxlsx는 대용량 파일에서도 빠른 읽기 / 쓰기 시간을 제공합니다. 이 라이브러리는 xlsx 파일에서 잘 작동하지만 이전 xls 파일은 지원하지 않습니다.

Openxlsx는 가져온 파일에서 읽은 데이터로 데이터 프레임을 생성하는read.xlsx 기능을 제공합니다. 가져올 영역에 행 및 열 이름, 가져올 워크 시트의 이름 또는 번호, 가져올 행과 열 등을 포함 할 수있는 많은 옵션이 있습니다.

다음 예에서는openxlsx 패키지를 설치하고 라이브러리를 엽니 다. 그런 다음read.xlsx의 옵션을 사용하여 Data.xlsx라는 파일의 시트 1에서 2, 4, 6 행과 5-7 열을 다음 데이터로 가져옵니다.

샘플 엑셀

그 후 결과 데이터 프레임의 내용을 콘솔에 인쇄합니다. 파일에서 열 이름을 읽지 않기 때문에 매개 변수colNamesFalse로 설정합니다. R은 가져온 데이터 프레임의 열에 기본 이름 시퀀스X1,X2,X3을 자동으로 할당합니다. 벡터로 지정하여 가져올 행과 열을 지정할 수 있습니다.

install.packages("openxlsx")
library("openxlsx")
MyData <- read.xlsx(xlsxFile="c:/Tmp/Data.xlsx", sheet = 1, rows = c(2, 4, 6), cols = 5:7, colNames = FALSE)
MyData

출력:

  X1 X2 X3
1 34 12 17
2 15 25 66
3 32 45 56

자세한 내용은 공식 openxlsx 문서를 확인하세요.