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 열을 다음 데이터로 가져옵니다.
그 후 결과 데이터 프레임의 내용을 콘솔에 인쇄합니다. 파일에서 열 이름을 읽지 않기 때문에 매개 변수colNames
를False
로 설정합니다. 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 문서를 확인하세요.