이것은 일반적인 메모리 할당 오류가 발생 했습니다. 일반적인 문제는 혁명 R은 데이터의 단일 부분에 대 한 메모리의 데이터를 처리 하는 데 데이터 파일의 행이 너무 많습니다를 한 번에 읽을 하려는 것입니다.

먼저 문제를 해결 하려면 다음을 시도해 보십시오.

RxImport() 문의 인수 'rowsPerRead'에 대 한 작은 값을 설정 합니다. '10000' 이하의 값을 봅니다. 다른 설정을 시도해 야

이 식일을 제대로 작동 하 고 가능한 한 빨리 데이터를 가져옵니다.

 

이렇게 하는 경우 csv 파일에 열을 많이 한 번에 'x' 데이터 열을 가져올 수 있습니다. 예를 들어, 5000 열으로 데이터 집합을 경우 50 열에 대 한 데이터를 한 번에 가져올 새 XDF 파일 50 열에 대 한 데이터를 작성 하 고 해당 기존 XDF 파일에 추가 합니다.

그렇게 하려면 R 샘플 코드는 다음과 같습니다.

varNames <- readLines("mycsv.txt", n=1) colsPerRead <- 50   ## Set how many columns to read from the csv file at a time. You may want to initially set this to a larger value, say 100. 
numReadsFromFile <- length(varNames/colsPerRead)

for (i in 1:numReadsFromFile) 

 tempdf <- rxImport(inData = "C:/MyRData/data.csv", varsToKeep = paste(varNames[((i-1)*colsPerRead)+1:(((i-1)*colsPerRead)+1)+colsPerRead], sep = ","), 
 rowsPerRead = 10000) 
 rxDataFrameToXdf(data = tempdf, ouFile = "C:/MyRData/data.xdf", append = "cols") 
}


추가 도움이 필요하신가요?

기술 향상
교육 살펴보기
새로운 기능 우선 가져오기
Microsoft Insider 참가

이 정보가 유용한가요?

언어 품질에 얼마나 만족하시나요?
사용 경험에 어떠한 영향을 주었나요?

의견 주셔서 감사합니다!

×