인텔 AI 교육
인텔 AI 교육 - Module-10(NumPy, Pandas, matplotlib)
Regain
2023. 7. 24. 09:58
(해당 자료들은 인텔 AI for Future Workforce내용을 학습하고 가공한 내용입니다.)
< Module - 10 >
#NumPy
1. NumPy 배열
- 동일한 데이터 유형 값들의 격자 조합
- 각 요소는 0부터 시작되는 인덱싱 값을 가진다.
- Shape는 arrays(배열)의 크기
>>> import numpy as np
>>> a = np.array([1, 3, 5])
*아래부터는 'import numpy as np'를 예시에서 생략하였습니다.
2. NumPy 배열 인덱싱
- 슬라이싱의 결과는 항상 원본의 하위 배열
- 정수 배열 인덱싱 구성 시 다른 배열의 데이터를 사용해 임의의 배열을 구성 가능하다.
- 'array[시작값 : 끝값]'를 통해 인덱싱
>>> a = np.array([1, 2, 3])
>>> print(a[0:2])
[1 2]
3. NumPy 배열 데이터 유형
- NumPy는 자체적으로 데이터 유형을 선택 가능
- 'dtype=datatype'을 사용해 직접 할당
>>> a = np.array([1, 2, 3], dtype=np.int64)
>>> print(a.dtype)
int64
4. NumPy 배열 수학 연산
- NumPy 자체에 내장된 연산자와 함수를 사용한다.
- 배열에 정수형이나 실수형일 경우 각 항끼리 더할 수 있다.
>>> a = np.array([1, 2, 3])
>>> b = np.array([4, 5, 6])
>>> print(a + b)
[5 7 9]
5. NumPy 배열 정렬
- 배열 요소를 정렬하는 내장 함수이다.
- 동일한 배열에 대해 슬라이스와 정렬을 할 수 있다.
>>> a = np.array([5, 3, 1, 2])
>>> print(np.sort(a))
[1 2 3 5]
6. NumPy 배열 조작
- 'array.reshape(배열 형태)'를 통해 모양을 바꿀 수 있다.
- 요소값은 변경되지 않는다.
>>> a = np.arange(10)
>>> #a = ([0, 1, 2, 3, 4, 5, 6, 7, 8, 9])
>>> a.reshape(5, 2)
>>> print(a)
array([[0, 1],
[2, 3],
[4, 5],
[6, 7],
[8, 9]])
#Pandas
>>> import pandas as pd
2D 배열을 지원하며 다양한 입력을 지원한다. 특히 .csv 파일을 읽는 기능을 자주 사용하게 된다.
#Matplotlib
고품질의 데이터 시각화를 위한 Python의 2차원 그래프 라이브러리로 몇 줄 만으로 간단하게 복잡한 그래프를 만들 ㅅ ㅜ있어 높은 사용성을 가짐
>>> import numpy as np
>>> # evenly sampled time at 200ms intervals
>>> t = np.arange(0., 5., 0.2)
>>> # red dashes, blue squares and green triangles
>>> plt.plot(t, t, 'r--', t, t**2, 'bs', t, t**3, 'g^')
>>> plt.show()