2016-08-18 3 views
0

32 비트 제한으로 인해 3Gb 만 액세스 할 수있는 4Gb RAM이있는 32 비트 운영 체제에서 Windows 7을 사용하고 있습니다. 나는 그 밖의 모든 것들을 닫았고, 시작하기 전에 캐시 된 1Gb와 1Gb 정도를 가지고 있음을 볼 수 있습니다. "무료"메모리는 다양하지만 때로는 0입니다.corpusSource 객체에서 코퍼스를 생성하지 못했습니다.

quanteda 사용 - 나는 157Mb corpusSource 객체를 성공적으로 생성하는 textfile() 명령을 사용하여 twitter.txt 파일을 읽습니다. corpus() 명령을 사용하여 "corpus"로 변환 할 다음 단계를 밟을 때 R은 그것을 통해 폭발을 일으키고 0을 모두 포함하는 네 개의 요소가있는 매우 작은 빈 파일을 만듭니다. 코드 및 출력은 다음과 같습니다.

twitterfile <- "./final/en_US/en_US.twitter.txt" 

precorp <- textfile(twitterfile) 
corp <- corpus(twitterprecorp) 
summary(corp) 

Corpus consisting of 1 document. 

       Text Types Tokens Sentences 
en_US.twitter.txt  0  0   0 

Source: C:/R_Data/Capstone/* on x86 by xxxxx 
Created: Thu Aug 18 06:32:01 2016 
Notes: 

Warning message: 
In nsentence.character(object, ...) : 
    nsentence() does not correctly count sentences in all lower-cased text 

... 왜 이런 일이 벌어 질지에 대한 통찰력이 있습니까?

+0

'precorp' 대신'twitterprecorp'를 사용합니다 – HubertL

+0

@HubertL은 확인해야 할 분명한 문제를 지적합니다. 또한 의도 한 문서 하나를 가지고 있습니까? 아니면'en_US.twitter.txt'에 여러 개의 "문서"가 여러 개의 트윗 형태로 포함되어 있습니까? –

+0

두 분 모두 감사합니다. 다음과 같이 코드를 업데이트하여 코드를 다음과 같이 업데이트하고 동일한 결과를 얻었습니다. –

답변

0
textfile() 

은 전체 파일에 대해 단일 요소로 문자 벡터를 제공합니다. 당신은 아마 같이

readlines() 

를 사용하려면 :

precorp <- readlines(twitterfile) 

이 파일의 각 행에 대한 요소와 당신에게 문자 벡터를 제공한다. 그런 다음 corpus()는 코퍼스를 만들 때 벡터의 각 요소를 문서로 처리합니다.

관련 문제