데이터프레임은 2차원 리스트를 매개변수로 전달합니다. 2차원이므로 행방향 인덱스(index)와 열방향 인덱스(column)가 존재합니다. 즉, 행과 열을 가지는 자료구조입니다. 시리즈가 인덱스(index)와 값(values)으로 구성된다면, 데이터프레임은 열(columns)까지 추가되어 열(columns), 인덱스(index), 값(values)으로 구성됩니다.
values = [[1, 2, 3], [4, 5, 6], [7, 8, 9]]
index = ['one', 'two', 'three']
columns = ['A', 'B', 'C']
df = pd.DataFrame(values, index=index, columns=columns)
print(df)
A B C
one 1 2 3
two 4 5 6
three 7 8 9
print(df.index) # 인덱스 출력
Index(['one', 'two', 'three'], dtype='object')
print(df.columns) # 열 출력
Index(['A', 'B', 'C'], dtype='object')
print(df.values) # 값 출력
[[1 2 3]
[4 5 6]
[7 8 9]]
넘파이(Numpy)는 수치 데이터를 다루는 파이썬 패키지입니다. Numpy의 핵심이라고 불리는 다차원 행렬 자료구조인 ndarray를 통해 벡터 및 행렬을 사용하는 선형 대수 계산에서 주로 사용됩니다. Numpy는 편의성뿐만 아니라, 속도면에서도 순수 파이썬에 비해 압도적으로 빠르다는 장점이 있습니다.
pip install numpy
> ipython
...
In [1]: import numpy as np
In [2]: np.__version__
Out[2]: '1.16.5'
Numpy의 주요 모듈은 아래와 같습니다. 1. np.array() # 리스트, 튜플, 배열로 부터 ndarray를 생성 2. np.asarray() # 기존의 array로 부터 ndarray를 생성 3. np.arange() # range와 비슷 4. np.linspace(start, end, num) # [start, end] 균일한 간격으로 num개 생성 5. np.logspace(start, end, num) # [start, end] log scale 간격으로 num개 생성
맷플롯립(Matplotlib)은 데이터를 차트(chart)나 플롯(plot)으로 시각화(visulaization)하는 패키지입니다. 데이터 분석에서 Matplotlib은 데이터 분석 이전에 데이터 이해를 위한 시각화나, 데이터 분석 후에 결과를 시각화하기 위해서 사용됩니다.
%matplotlib inline
import matplotlib.pyplot as plt
plt.title('test')
plt.plot([1,2,3,4],[2,4,8,6])
plt.show()