데이터 분석을 가르치는 미국 어떤 교수님이 써놓은 글을 참고해서 써 놓은 글이다.




아래 링크에서 중요하다고 생각하는 부분을 번역 했다.

http://www.dataschool.io/python-or-r-for-data-science/




Python을 할 것인가 R을 할 것인가


프로그래밍을 해본 경험이 있는가?

프로그래밍을 해본 경험이 있다면 파이썬을 하는게 좋은 것 같다. 왜냐하면 파이썬 문법은 다른 프로그래밍 문법하고 비슷하므로 적응하기가 더 좋다. 프로그래밍을 해본 경험이 없으면 둘 다 비슷한 것 같다.


연구를 할 용도인지 실무를 할 용도인지?

기준이 좀 애매하긴 하다. 연구인지 실무인지를 떠나서 통계적인 분석을 하려면 R이 좋고 뭘 만들어 내야 하는 경우라면 Python이 좋다.



R이 매력적인가 Python이 매력적인가?

R의 사이트 디자인은 별로다. 아니 뭐가 없다. 반면에 Python은 R에 비해서 사이트도 예쁘게 잘 해놓았고 문서도 깔끔하게 정리 해놓았다. 접근성은 Python이 더 좋은 것 같다.



데이터 클리닝(data cleaning)할 때 좋은 언어는?

데이터 클리닝은 raw data(가공 하지 않은 널려 있는 데이터들)를 정리해서 사용할 수 있을 정도로 가공하는 작업을 말한다. 이거 할 때는 Python이 좋다. 왜냐하면 Python은 데이터 타입이 여러가지 이고(R은 숫자랑 문자 정도만 있는 듯) 정규식(문자에서 패턴 찾아내는 것)을 지운 하기 때문이다.



데이터 탐색(data exploration) 할 때 좋은 언어는?

데이터 탐색이란 데이터를 읽어와서 시각화 하는 작업이라고 볼 수 있다.

이 작업을 하는데에는 파이썬이 좀 더 좋은 것 같다. python의 pandas라는 패키지가 있는데 이 패키지가 참 좋기 때문이다. R에도 dplyr이라는 패키지가 있는데 panada에 비해서는 할 수 있는게 적다. 대신 dplyr은 배우기 쉬운 장점이 있지만 그만큼 단순해서 불편한 것도 있다.


빅데이터 환경의 특징

〈표 1〉 빅데이터 환경의 특징
구분기존빅데이터 환경

데이터

- 정형화된 수치자료 중심

- 비정형의 다양한 데이터
- 문자 데이터(SMS, 검색어)
- 영상 데이터(CCTV, 동영상)
- 위치 데이터

하드웨어

- 고가의 저장장치
- 데이터베이스
- 데이터웨어하우스(Data-warehouse)

- 클라우드 컴퓨팅 등 비용효율적인 장비 활용 가능

소프트웨어/분석 방법

- 관계형 데이터베이스(RDBMS)
- 통계패키지(SAS, SPSS)
- 데이터 마이닝(data mining)
- machine learning, knowledgediscovery

- 오픈소스 형태의 무료 소프트웨어
- Hadoop, NoSQL
- 오픈 소스 통계솔루션(R)
- 텍스트 마이닝(text mining)
- 온라인 버즈 분석(opinion mining)
- 감성 분석(sentiment analysis)



자연어 처리는


인간이 발화하는 언어 현상을 기계적으로 분석하여, 컴퓨터가 이해할수 있는 형태로 만드는 자연 언어 이해 

혹은 그러한 형태를 다시 인간이 이해할 수 있는 언어로 표현하는 제반 기술을 의미



컴퓨터가 이해할 수 있는 형태로 표현하고자 한다는 점에서 인공지능과 대단히 밀접한 관련이 있으며,

전산언어학과 거의 구별없이 비슷한 의미로 사용된다.

정의


기존 DBMS Tool(데이터베이스 관리도구) 의 능력을 넘어서는 

수십 TB 의 정형 또는 심지어 데이터베이스 형태가아닌 비정형 데이터의 집합 조차 포함한 데이터로부터 가치를 추출하고 결과를 분석하는 기술



2012년 가트너는 빅데이터 기존의 정의를 다음과 같이 개정하였다: 

“빅 데이터는 큰 용량(volume), 빠른 속도(velocity), 그리고(또는) 높은 다양성(veriety)을 갖는 정보 자산으로서 이를 통해 의사 결정 및 통찰 발견, 프로세스 최적화를 향상시키기 위해서는 새로운 형태의 처리 방식이 필요하다.”



분석기법


빅 데이터의 분석, 활용을 위한 빅 데이터 처리 기법은 크게 분석 기술, 표현 기술로 나뉜다.


분석 기술


  • 텍스트 마이닝: 비/반정형 텍스트 데이터에서 자연 언어 처리 기술에 기반하여 유용한 정보를 추출, 가공
  • 오피니언 마이닝: 소셜미디어 등의 정형/비정형 텍스트의 긍정, 부정, 중립의 선호도를 판별
  • 소셜 네트워크 분석: 소셜 네트워크의 연결 구조 및 강도 등을 바탕으로 사용자의 명성 및 영향력을 측정
  • 군집 분석: 비슷한 특성을 가진 개체를 합쳐가면서 최종적으로 유사 특성의 군집을 발굴


대규모의 정형/비정형 데이터를 처리하는 데 있어 가장 기본적인 분석 인프라로 하둡이 있으며, 데이터를 유연하고 더욱 빠르게 처리하기 위해 NoSQL 기술이 활용되기도 한다.


+ Recent posts