본문 바로가기

R 크롤링

[R크롤링] 5. 데이터 분석(정제)

반응형

## 작성일: 2017.12.18

## 작성자: 춤추는초코칩

## 참고문허: R과Java로 크롤링하자

## Part04 데이터 분석 및 시각화

## Chapter10 데이터 분석(정제)


## Step0. 실습에 사용할 데이터 가져오기

library("rvest")

library("R6")

# 나무위키 반지의제왕 크롤링하기

# html 주소를 url에 저장

url <- 'https://namu.wiki/w/%EB%B0%98%EC%A7%80%EC%9D%98%20%EC%A0%9C%EC%99%95'

# read_html 함수를 사용하여 html 페이지를 htxt 변수에 저장

htxt <- read_html(url)

# html_nodes 함수를 사용하여 wiki-heading-content class에 해당하는 부분을 content 변수에 저장

content <- html_nodes(htxt,'.wiki-heading-content')

# html_text 함수를 사용하여 text 부분을 reviews 변수에 저장

review <- html_text(content)

review


## Step1. 분석 환경설정

## 데이터 정제를 위한 가장 중요한 패키지 KoNLP 설치. 주의:o는 소문자

##install.packages("KoNLP")

library(KoNLP)

## 작업폴더 지정

setwd("D:/R/R과Java로 크롤링하자")

getwd()

gc()

## 세종사전 설치

useSejongDic()



## Step2. 데이터 정제

## 크롤링된 데이터를 목록형태로 저장

text <- sapply(review,extractNoun,USE.NAMES = F)

## 필터링을 위해 unlist 함수를 사용해서 저장

data <- unlist(text)

## 글자수 2개 이상만 취급

data <- Filter(function(x){nchar(x)>=2},data)

## 불필요한 데이터 처리

data <- gsub("\\d+","",data)

data <- gsub(" ","",data)

data <- gsub("-","",data)

data

## 빈도표 작성

data_cnt <- table(data)

## 데이터 저장. 주의: 엑셀에서 한글이 깨질 때에는 [탭]데이터>[그룹]외부데이터가져오기>텍스트를 이용

write.csv(data_cnt,"TheLordOfTheRings.csv")

## 조금 더 처리해야할 텍스트가 보이는 것 같습니다

반응형