본문 바로가기
반응형

R37

[R.아르] 웹페이지에서 원하는 요소 가져오기(크롤링) 다음과 같은 페이지에서 1-10위까지 목록을 추출하는 방법을 알아보자. R사의 베스트셀러 페이지이며, 주소는 다음과 같다. https://ridibooks.com/bestsellers/general?order=monthly 일단, 웹페이지를 가져오려면 httr 패키지가 필요하다. library(httr) 처음 보는 패키지라면 다음과 같이 설치해 주자. install.packages('httr') 패키지를 불러왔다면 GET 함수 안에 위 주소를 넣고 웹페이지를 불러온다. web=GET('https://ridibooks.com/bestsellers/general?order=monthly') 다음과 같이 로 시작하는 202 kB 의 문서가 잘 들어온 것을 확인할 수 있다. 이제 이 HTML 문서 어딘가에 있을.. 2018. 3. 13.
[R.아르] TermDocumentMatrix를 표로 전환하는 과정에서 에러가 날 때 TermDocumentMatrix 에서 각 Term 들의 빈도수 합을 구하기 위해 표로 전환해야 할 필요가 있다. tdm 2017. 11. 1.
[R.아르] TDM에서 tokenize 가 동작하지 않을 때 (형태소 분석) 지난 번 2017/10/18 - [R] - [R.아르] Term Document Matrix 생성시 한글 인코딩이 깨질때 포스트에서 눈치채신 분도 있겠지만 TermDocumentMatrix 를 만들 때 웬일인지 tokenize 가 제대로 동작하지 않는 것으로 보인다. 예로, sapply 를 통해 텍스트에 extractNoun함수를 적용시키면 > text text [1] "컴퓨터는 수치 연산을 위해 설계되었다. 컴퓨터 발명 초기에는 문자를 표현해야 하는 요구가 없었다." [2] "그러나 곧 문자를 표현해야 하는 요구가 발생했다. 이기종 컴퓨터끼리 문자 데이터를 교환하기 위해서는 표준이 필요하다." > x x [[1]] [1] "컴퓨터는" "수치" "연산" "설계" "되" "컴퓨터" "발명" "초" "문자".. 2017. 10. 19.
[R.아르] Term Document Matrix 생성시 한글 인코딩이 깨질때 다음과 같이 텍스트를 불러올 때는 잘 불러와졌는데 > text text [1] "컴퓨터는 수치 연산을 위해 설계되었다. 컴퓨터 발명 초기에는 문자를 표현해야 하는 요구가 없었다. " [2] "그러나 곧 문자를 표현해야 하는 요구가 발생했다. 이기종 컴퓨터끼리 문자 데이터를 교환하기 위해서는 표준이 필요하다." > 말뭉치를 만들 때까지도 괜찮았는데 > text inspect(text) Metadata: corpus specific: 1, document level (indexed): 0 Content: documents: 2 [1] 컴퓨터는 수치 연산을 위해 설계되었다. 컴퓨터 발명 초기에는 문자를 표현해야 하는 요구가 없었다. [2] 그러나 곧 문자를 표현해야 하는 요구가 발생했다. 이기종 컴퓨터끼리 문.. 2017. 10. 18.
[R. 아르] KoNLP 패키지에서 에러가 날 때 다음과 같이 하면 KoNLP 패키지를 설치하고 불러올 수 있지만 install.packages("KoNLP")library(KoNLP) 간혹 다음과 같은 에러메시지가 출력되는 경우도 있다. Error : .onLoad failed in loadNamespace() for 'rJava', details: call: fun(libname, pkgname) error: JAVA_HOME cannot be determined from the registryError: package or namespace load failed for ‘KoNLP’ rJava가 설치되지 않아 발생하는 문제다. 일단 다음 링크에서 운영체제에 맞는 버전의 Java를 설치하자. https://www.java.com/en/download.. 2017. 10. 16.
[R. 아르] 언어 설정하기 / MDI, SDI 설정하기 2017/10/11 - [R] - [R.아르] 통계 프로그램 R 설치하기에서 본 대로 처음 R을 설치하면 운영체제의 언어를 감지하여 자동으로 설정해 준다. 만일 기본 언어를 영어로 바꾸고 싶다면 C:\Program Files\R\R-3.4.2\etc 의 Rconsole 파일을 연다. 대략 위와 같은 모습일 것이다. language 를 찾는다. language = 하고 비어 있는 공간에 en 을 적어 준다. 언어가 영어로 변경되었다. 2017/10/11 - [R] - [R.아르] 통계 프로그램 R 설치하기에 나온 MDI / SDI 도 여기에서 설정해 줄 수 있다. MDI 를 찾아본다. 현재 MDI = no 로 되어 있는데, 이는 우리가 설치할 때 SDI 로 설정했기 때문이다. 이것을 yes 로 바꾸어 주면.. 2017. 10. 12.
[R.아르] 통계 프로그램 R 설치하기 CRAN (Comprehensive R Archive Network) 사이트를 방문하면 R을 설치할 수 있다. 주소는 다음과 같다. https://cran.r-project.org/ 참고로 CRAN에서는 트래픽 과부하를 우려하여 지역적으로 가까운 미러를 방문할 것을 권장하고 있다. 대한민국의 미러는 다음 세 가지로 표기되어 있다. http://cran.nexr.com/http://healthstat.snu.ac.kr/CRAN/http://cran.biodisk.org/ 어디를 방문하든 동일하므로, 마음에 드는 곳을 클릭해 보자. 다음과 같은 화면이 보일 것이다. 사용하는 운영체제에 맞게 다운로드 받자. 여기서는 Windows로 진행하기로 한다. 처음 설치할 때는 base를 설치하라고 알려주고 있다. 20.. 2017. 10. 11.
[R.아르] 특정 단어가 들어있는 문장 추출하기 Q. A. grep()을 사용하면 됩니다. (참고: 2016/09/30 - [R] - [R.아르] 특정 문자가 포함된 행 추출하기 grep() / 객체 지우기 rm()) 예를 들어 다음과 같은 텍스트가 있을 경우 grep()으로 "별"을 찾으면 3, 9, 13, 14번째 문장에 있다고 알려줍니다. 그러므로 다음과 같이 입력하면 특정 단어가 포함된 문장을 얻을 수 있습니다. 2016. 12. 6.
[R.아르] 문장에서 보통명사만 추출하기(2) 2016/12/06 - [R] - [R.아르]문장에서 보통명사만 추출하기(1)에 이어 본격적으로 추출해 보자. 역시 만료 저작물 중 하나인 의 텍스트를 UTF-8 형식으로 저장한다. (주소: https://gongu.copyright.or.kr/gongu/wrt/wrt/view.do?wrtSn=9002094&menuNo=200030) 이후 순서는 루틴이므로 고민 없이 차례대로 진행하면 되겠다. 1. 텍스트 읽어오기2. 말뭉치(Corpus) 로 변환 3. Term Document Matrix 로 변환4. 표(matrix)로 변환5. 각 행의 합을 구함6. 빈도역순으로 정렬 Corpus 등으로 변환하려면 tm 패키지를 불러와야 한다. 불러오는 김에 멀티코어를 사용하지 않음도 정의해 주고, 사전도 변경해 주자.. 2016. 12. 6.
[R.아르] 문장에서 보통명사만 추출하기(1) 문장에서 보통명사만 추출하는 과정은 2016/11/22 - [R] - [R.아르] 문장에서 명사 추출하기 에서 본 과정과 거의 동일하다. 다만 extractNoun()으로 명사를 추출하는 대신 보통명사만 추출해야 하므로 위 포스트에서 제작했던 커스텀 함수 부분을 보통명사 추출로 바꾸어 주면 된다. 커스텀 함수 제작 후, 동일한 과정을 반복해 보자. words 2016. 12. 6.
반응형