[R] 엑셀 데이터 불러오기
On April 8, 2014 by JG Seok간간히 쓰는 R. 잊어버릴 때 쯤 찾기 쉽게 간단한 사용법 정리
=============================================
1. 엑셀에서 ‘다른 이름으로 저장’ 에서 확장자를 CSV나 xlsx를 선택
2-1. CSV는 data <- read.csv(“datafile.csv”) 로 불러올 수 있다.
2-1-1. 첫 항에 header (column 이름)가 없이 바로 데이터가 시작한다면, data <- read.csv(“datafile.csv”, header=FALSE)
2-2. 위의 방식으로 load하게 되면 각 cloumn(내부적으로는 ‘dataframe의 각 열’)에 이름이 있는데 그것을 내가 원하는 형태로 변환
names(data) <- c(“col1″,”col2″,”col3”)
이렇게 되면 나중에 data$col1, data$col2 등으로 접근이 가능하다.
2-2. xlsx를 불러오려면 “xlsx”라는 패키지가 필요하다. install.packages(“xlsx”);
설치가 완료되면 library(xlsx); 로 패키지를 로드한다. 로드시 에러가 난다면 dependency들이 함께 설치되지 않았기 때문일 듯
2-3. data<- read.xlsx(“datafile.xlsx”, sheetIndex = 1) 또는 sheetIndex 대신 sheetName=”abcd” 등으로 불러와야한다.
2-4. Error message
다음에 오류가 있습니다.jcall(cell, “D”, “getNumericCellValue”) :
java.lang.IllegalStateException: Cannot get a numeric value from a text cell
잘 모르겠지만 아마 ‘D’열이 속성은 문자열인데 숫자를 불러오는 함수를 써서 그렇다는 뜻일 것이라고 판단.
엑셀 파일에서 D열의 속성을 ‘일반’ 에서 ‘숫자’로 바꿨더니 다시 함수를 실행했을 때 에러가 안났다.
Leave a Reply