티스토리 뷰
python에 numpy, scipy, pandas, matplotlib 설치하기 (이클립스 등의 편집기에서 실습)
방법 1)
c:\~>pip install numpy
...
하거나 또는 아래와 같이 해 준다.
http://www.lfd.uci.edu/~gohlke/pythonlibs 에서 해당 파일을 찿아 다운로드한다.
압축을 풀어 python\lib\site-packages 폴더에 복사해 준다.
아래에 적어 둔 내용도 수행시켜 준다.
c:\~>easy_install python_dateutil
c:\~>easy_install pyparsing
c:\~>pip install cycler
c:\~>pip install pytz
방법 2)
Anaconda 를 설치(위의 모든 모듈이 자동으로 설치됨)하고, 이클립스에서 실행한다.
또는 IPython 환경으로 실습해도 됨(이 때는 대개의 경우 Jupyter Notebook을 사용함)
--이클립스의 pydev에서 numpy 예제
import numpy as np #numpy 라이브러리를 np라는 이름으로 import 시킨다.
a = np.array([1, 2, 3]) # 랭크가 1인 배열을 생성한다
print (type(a)) # a의 타입,"<type 'numpy.ndarray'>" 를 표시한다.
print (a.shape) # a의 모양 shape인 "(3,)" 을 표시한다.
print (a[0], a[1], a[2]) # []로 각 인덱스 요소에 접근할 수 있다. "1 2 3" 이 표시된다.
a[0] = 5 # 인덱싱으로 새로운 값을 할당할 수 있다.
print (a) # Prints "[5, 2, 3]"
print()
b = np.array([[1,2,3],[4,5,6]]) # 리스트들을 통해 rank 2인 배열을 만든다.
print (b.shape) # b의 모양은 "(2, 3)" 이 되며, 2행 3열이라 보면 된다.
print (b[0, 0], b[0, 1], b[1, 0]) # 배열은 튜플로서 인덱스 되고, (0,0), (0,1), (1,0) 의 인덱스를 찾아 "1 2 4" 를 표시.
--이클립스의 pydev에서 pandas 예제
from pandas import Series
#Series는 일련의 객체를 담을 수 있는 1차원 배열과 같은 자료구조로 색인을 갖는다.
obj = Series([3, 7, -5, 4])
print(obj)
print()
obj2 = Series([3, 7, -5, 4], index=['a', 'b', 'c', 'd']) #색인을 지정
print(obj2)
print("\n배열 값 얻기")
print(obj2.values)
print("\n배열 인덱스 얻기")
print(obj2.index)
print()
#파이썬 dict type의 자료로 Series 객체를 생성
names = {'mouse':12000, 'keyboard':25000, 'mornitor':'450000'}
print(names)
obj3 = Series(names)
print(obj3)
print()
obj3.index = ['키보드', '모니터', '마우스'] #Series의 색인은 대입을 통해 변경이 가능
print(obj3)
--이클립스의 pydev에서 차트 그리기 예제
import matplotlib.pyplot as plt
import numpy as np
x = range(100)
y = [ i*i for i in x]
plt.plot(x,y)
plt.show()
print()
plt.plot([1,2,3,4], [1,4,9,16], 'ro')
plt.show()
print()
def f(t):
return np.exp(-t) * np.cos(2*np.pi*t)
t1 = np.arange(0.0, 5.0, 0.1)
t2 = np.arange(0.0, 5.0, 0.02)
plt.figure(1)
plt.subplot(211)
plt.plot(t1, f(t1), 'bo', t2, f(t2), 'k')
plt.subplot(212)
plt.plot(t2, np.cos(2*np.pi*t2), 'r--')
plt.show()
--소계 출력 예제
from pandas.core.series import Series
from pandas.core.frame import DataFrame
import numpy as np
np.random.seed(1)
n=10
df = DataFrame({'mygroups' : np.random.choice(['dogs','cats','cows','chickens'], size=n), 'data' : np.random.randint(1000, size=n)})
df.sort_values('mygroups', ascending=False, inplace=True )
print(df.groupby('mygroups', sort=False).sum())
수학, 통계, 차트 관련 사이트
module
numpy기초
http://scipy.github.io/old-wiki/pages/Tentative_NumPy_Tutorial.html
scipy 학습
http://www.scipy-lectures.org/
pandas 학습
http://quant-econ.net/py/pandas.html
powerful Python data analysis toolkit (pdf)
http://pandas.pydata.org/pandas-docs/version/0.18.1/pandas.pdf
matplotlib 학습
https://www.wakari.io/nb/url///wakari.io/static/notebooks/Lecture_4_Matplotlib.ipynb
http://www.labri.fr/perso/nrougier/teaching/matplotlib/
머신러닝 삽질해보기
http://blog.naver.com/acwboy/220525345312
'공부 > Python' 카테고리의 다른 글
Python Closure 함수 (0) | 2016.12.15 |
---|---|
HTML 파싱 라이브러리 BeautifulSoup (0) | 2016.12.15 |
PyQt (0) | 2016.12.15 |
윈도우, python3.x 에서 Django 설치 (0) | 2016.11.23 |
Python 관련 링크 (0) | 2016.11.23 |