본문 바로가기

코드이야기/Python

(7)
Python3에서 선형회귀분석을 위한 외부모듈 설치하기 파이썬 3에서 선형 회귀분석을 하기 위해서는 수학, 과학, 공학과 관련된 기능을 모아둔 SciPy, NumPy, Matplotlib을 설치해야 한다. 다음의 각 모듈 홈페이지에서 관련모듈을 다운 받아 설치할 수 있다.SciPy(http://www.scipy.org/)Numpy(http://www.numpy..org/)Matplotlib(http://matplotlib.sourceforge.net/)비공식적으로 Christoph Gohlke라는 프로그래머가 윈도우 환경의 파이썬 사용자를 위해 실행파일(exe)형태에의 바이너리를 개인홈페이지(http://www.lfd.uci.edu/~gohlke/pythonlibs/)에서 제공하고 있다. 이 사이트에서 본인의 환경과 버전에 맞는 Numpy, SciPy, Ma..
데이터 분석을 위한 파이썬 필수라이브러리 데이터 분석을 위해서는 분석할 문제를 정의하는 단계에서 분석결과를 보고하는 단계까지 여러단계가 이루어진다고 포스팅했습니다. 이 중 첫 4단계는 컴퓨터의 도움없이 연필과 종이로 충분히 할 수 있습니다. 하지만, 실제 데이터를 수집하고, 가공해서, 보여주는 단계에 이르면 수작업만으로는 한계가 있습니다. 파이썬은 데이터 분석을 위한 다양한 라이브러리를 제공합니다. 데이터를 수집하고, 가공하고, 시각화하는 데 필수적인 파이썬 라이브러리를 소개하도록 하겠습니다. 데이터 수집 - Beautiful Soup Beautiful Soup 라이브러리는 강력한 HTML 파싱 라이브러리입니다. 우리가 분석을 위해 수집하는 데이터의 대부분은 웹 상에 존재합니다. 웹페이지는 태그가 포함된 HTML파일을 브라우저가 해석해 우리에게..
Beautiful Soup 라이브러리로 기온데이터 수집하기 작년 한 해 서울의 기온은 어떻게 변했을까요? 이런 작업을 하려면 날씨정보가 어디있는지 알아야 하고, 그 정보를 활용해서 우리가 보고싶은 모습으로 표현할 수 있어야 합니다. Weather Underground에서는 전세계의 날씨 데이터를 일자별, 주별, 월별, 기간별로 제공하고 있습니다. 한 가지 문제가 있습니다. 우리가 원하는 것은 일별 데이터인데 모두 확인하려면 대단한 노가다(?)를 해야한다는 것입니다. 파이썬의 Beautiful Soup 라이브러리를 활용하면 이 작업을 쉽게 처리할 수 있습니다. Beautiful Soup라이브러리는 html과 xml로 부터 데이터를 뽑아내기 위한 라이브러리 입니다. Beautiful Soup Document를 보시면 자세한 내용을 확인 할 수 있습니다. 이 라이브러..
파이썬으로 삼각함수표 만들기 읽기 전에 추천 한 번! 블로거에겐 큰 힘입니다 사진은 세상에서 가장 높은 빌딩인 아랍에미레이트 두바이의 부르즈 할리파의 모습입니다. 그 높이가 829.8미터에 이릅니다. 높이가 829.8미터라는 것을 어떻게 측정 할 수 있을까요? 꼭대기에 올라가서 아주 긴 자를 가지고 땅으로 떨어뜨려 보는 방법도 있겠지요. 하지만 너무 위험합니다. 그럼 다른 방법은 없을까요? 고대 그리스의 천문학자들 역시 비슷한 고민을 했습니다. 지구에서 별까지의 거리를 측정하는 것입니다. 이런 문제들을 삼각함수를 활용하면 풀 수 있습니다. 건물의 높이 계산, 별까지의 거리계산 외에도 벡터계산, 진동, 음향, 파동 등의 그래프 표현, 항공기의 항법장치 등 수많은 분야에 활용되고 있습니다. 여기서는 삼각함수의 기본적인 개념을 살펴보고 ..
[파이썬] 시퀀스 자료형의 기초 문자열, 리스트, 튜플 같은 자료형을 시퀀스(Sequence) 자료형이라고 합니다. 시퀀스 자료형에 포함된 각 객체는 순서를 가지고, 인덱스(Index)를 사용하여 참조할 수 있습니다. 파이썬에서 문자열(String)은 작은 따옴표 ' '나 큰 따옴표 " "로 묶어 표시하고, 리스트(List)는 대괄호 [ ], 튜플(Tuple)은 소괄호 ( )로 묶어 표시합니다. 각 자료형은 고유한 특성들을 가지기도 하지만, 공통적으로 적용되는 특성들이 있습니다. 인덱싱(Indexing) 인덱싱이란 시퀀스 데이터에서 오프셋(Offset)으로 하나의 객체를 참조하는 것을 말합니다. 여기서 인덱스는 정수이며, 0에서 부터 시작합니다. 1이 아니라 0에서 부터라는 것을 잊지 마세요. 예를 들면 다음과 같습니다. >>> a =..
[파이썬] 문자열 메서드 활용하기 데이터 분석을 위해서는 원시 데이터를 가공하는 능력이 중요합니다. 파이썬에서 제공하는 리스트, 문자열 메소드와 for문을 통해 리눅스의 'etc/passwd'파일에서 사용자 id만을 추출하는 방법을 살펴 보겠습니다. 만약 리눅스를 사용하고 있다면, 'etc/passwd'파일을 열어보시기 바랍니다. 아래와 같은 형식으로 되어 있을 것입니다.root:x:0:0:root:/root:/bin/bash bin:x:1:1:bin:/bin:/sbin/nologin daemon:x:2:2:daemon:/sbin:/sbin/nologin adm:x:3:4:adm:/var/adm:/sbin/nologin lp:x:4:7:lp:/var/spool/lpd:/sbin/nologin sync:x:5:0:sync:/sbin:/bi..
IPython Qtconsole과 Notebook 설정하기 파이썬을 처음 설치하고 IDLE을 실행하면 콘솔형태로 파이썬 코드를 작성하고 실행 할 수 있습니다. 그런데 기본적으로 제공하는 편집기를 사용하다 보면 불편함이 많습니다. 그래서 나에게 맞는 개발환경 구축을 위해 여러 방편들을 찾기 시작하게 됩니다. Eclipse에서 Pydev를 사용하기도 했고, Wing IDE라고 하는 파이썬에 최적화된 IDE를 사용하기도 했습니다. 그러나 이제는 IPython의 Qt Console과 Notebook에 정착했습니다. 가볍고, 편하고, 강력하기 때문입니다. Python을 활용한 Data분석을 위해서는 최고의 도구라고 생각합니다. IPython에 대한 자세한 내용은 ipython.org에서 확인할 수 있습니다. 여기서는 IPython을 처음 설치한 후 필요한 몇가지 설정사항..