본문 바로가기

Hot! Trend!

R 프로그래밍으로 데이터마이닝 따라잡기




<출처: pixabay>



데이터 마이닝(data mining)이란 원시데이터 혹은 기초형태의 데이터를 유용한 정보로 바꾸는 것을 의미합니다. 데이터 붐을 시작으로 본격적인 빅데이터의 시대가 시작되면서 데이터 과학의 입지는 점차 커지고 있습니다. 하루에 SNS에 올리는 글만해도 그 수를 헤아릴 수 없을 정도로 많고 그 정보들은 모두 하나의 인터넷 네트워크에 저장됩니다. 이렇게 다양하고 광대한 데이터를 유용한 정보로 바꾸는 것, 바로 데이터 마이닝 입니다. 기업들은 데이터 마이닝을 통해 자사의 상품에 대한 소비자의 반응을 확인 할 수 있고더 나아가 개선해야 할 점까지 대충 짐작할 수 있습니다. 그럼 어디 한번 SNS 중 하나인 트위터에서의 트윗을 데이터 마이닝 하는 기술, 바로 트위터 마이닝을 해볼까요?







우선 통계프로그램인 R과 R언어 오픈소스 소프트웨어인 R Studio를 다운받아야 합니다.

R은https://cran.r-project.org/bin/windows/base/ 에서,

R Studio는https://www.rstudio.com/products/rstudio/download/ 에서 다운 받으실 수 있습니다.







우선 자신의 휴대폰 번호가 등록된 트위터 계정이 필요합니다.






<출처: 자체 제작>









계정 개설을 완료했다면 다음의  주소로 이동합니다: apps.twitter.com





<출처: 자체 제작>


Create New App 클릭아래와 같은 화면이 나오면 정보를 입력하고 앱을 생성합니다.



<출처: 자체 제작>




Name, Description, Website  입력, Callback URL 빈칸으로 놔둬도 무방합니다.

여기서 Name 다른 사람이 생성한  이름과 곂치면 안되므로 자신만의  이름을 만들어야 합니다.

 

 페이지에서 "Keys and Access Tokens" 탭에 들어간  개의 정보 ("Consumer Key", "Consumer Secret", "Access Token", "Access Token Secret") 확인합니다.








이제   개의 정보를 R 불러들여야 합니다.

본격적으로 R 들어가볼까요?







Command Prompt를 통해 twitteR과 RCurl 패키지를 다운 받고library() 함수를 통해 R로 불러 들입니다. 그리고 전 단계의 네 개의정보를setup_twitter_oauth() 함수에 argument로 순서대로 입력한 후, 실행합니다.






<출처: 자체 제작>



저는 key secret 유출 방지를 위해 따로  개의 정보를 consumer_key, consumer_secret 등에 저장해놓았습니다.


setup_twitter_oauth() 함수를 Run 하면 컨솔에 아래 같이 뜨면 1 입력해줍니다.






 





* 이 단계에서 에러가 뜬다면 httr패키지를0.6.1 버전으로 다운 받은 후 R로 불러와야 합니다.

http://cran.r-project.org/src/contrib/Archive/httr/ 에서 0.6.1버전을 다운 받은 후 R 컨솔에 file.choose() 함수를 사용해 다운받은tar.gz 파일을 선택하면 C: 로 시작하는 파일 경로(path) R 컨솔에 뜹니다. 이걸 복사 한 후,install.packages("파일경로") 를입력 하여 httr 0.6.1을 새롭게 다운 받은 후, library(httr)을 통해 불러옵니다. R Studio를 재시작하면setup_twitter_oauth() 를Run할 때 에러가 사라집니다.









이제 searchTwitter() 함수를 사용해 트위터 글 들을 불러 올 수 있습니다. " " 안의 character가 포함된 트윗을n=10, 즉10개 불러오도록 만들었고lang="kr", 한국어로 설정했습니다.(영어는lang="en")








<출처: 자체 제작>




issuenow의 트위터 계정 사용자가 삼성에 대해 다음과 같은 트위터 글을 썼다는 것을 알 수 있습니다. 이는 아주 기초적인 형태의데이터입니다. 이를 유용한 정보로 바꾸기 위해서는 훨씬 더 많은 양의 트윗들을 불러와 Data Cleaning을 거쳐 시각화해야 합니다. 예를 들어 "삼성"과 관련된 트윗들에 쓰이는 형용사가 긍정인지 부정인지를Scaling 한 후 그래프로 나타내는 것이 하나의 실용적인데이터 마이닝 이라고 할 수 있습니다.







'Hot! Trend!' 카테고리의 다른 글

ATL BTL 혼합광고  (2) 2017.09.25
코스파족, 페이크슈머 살펴보기  (0) 2017.09.25
4차 산업혁명의 뜨거운 감자, 빅데이터  (0) 2017.08.27
여름 맞이 해변가 특집  (0) 2017.08.23
CITY PASS : TORONTO  (0) 2017.08.23