728x90
1. Numpy
배열 생성하기
import numpy as np
# 1차원 배열 생성
array1 = np.array([1,3,5,6,7,9])
array1
# 출력: array([1, 3, 5, 6, 7, 9])
# 0으로 채워진 배열 생성
np.zeros(5)
# 출력: array([0., 0., 0., 0., 0.])
# 범위를 지정하여 배열 생성
np.arange(10) #0~9까지 이어지는 array가 생성, for문 range와 비슷함
# 출력: array([0, 1, 2, 3, 4, 5, 6, 7, 8, 9])
np.arange(4,17,3) #시작점, 끝점, 간격 순으로 파라미터를 활용 가능
# 출력: array([ 4, 7, 10, 13, 16])
인덱싱과 슬라이싱
ex_array = np.array([6110,7637,8127,8885,10385,12565,13403,12398,8282,10672])
# 인덱싱
ex_array[0] # 출력: 6110
ex_array[-1] # 출력: 10672
# 슬라이싱
ex_array[2:6] #2번~6번 인덱스까지 골라서 슬라이싱, 새로운 어레이를 만들어 줌
# 출력: array([ 8127, 8885, 10385, 12565])
ex_array[1:8:3] #간격 또한 파라미터로 넣어줄 수 있음
# 출력: array([ 7637, 10385, 12398])
기본 연산
ex_array = np.array([12257,11561,13165,14673,16496,19403])
# 평균 연산
ex_array.mean() # 출력: 14592.5
# 합계
ex_array.sum() # 출력: 87555
# 최소값
ex_array.min() # 출력: 11561
# 최대값
ex_array.max() # 출력: 19403
# 배열 연산
ex_array * 1200
# 출력: array([14708400, 13873200, 15798000, 17607600, 19795200, 23283600])
조건문
ex_array = np.array([6610, 7637, 8127, 8885, 10385, 12565, 13403, 12398, 8282, 10672])
# 10000보다 큰 값만 선택
ex_array[ex_array > 10000]
# 출력: array([10385, 12565, 13403, 12398, 10672])
# 10000보다 크거나 8000보다 작은 값 선택
ex_array[(ex_array > 10000) | (ex_array < 8000)]
# 출력: array([ 6610, 7637, 10385, 12565, 13403, 12398, 10672])
2. Matplotlib
그래프 개형 그리기
import matplotlib.pyplot as plt
year_array = np.array([2011,2012,2013,2014,2015,2016,2017,2018,2019,2020])
stock_array = np.array([
14.46, 19.01, 20.04, 27.59, 26.32,
28.96, 42.31, 39.44, 73.41, 132.69
])
plt.plot(year_array, stock_array) #x축과 y축에 들어갈 값을 순차적으로 넣으면 됨
plt.show()
막대 그래프
name_array = np.array(['mark', 'dongwook', 'hyojune', 'sowon', 'taeho'])
votes_array = np.array([5, 10, 6, 8, 3])
plt.bar(name_array, votes_array) #막대그래프
plt.show()
산점도 그래프
height_array = np.array([
165, 164, 155, 151, 157, 162, 155, 157, 165, 162,
165, 167, 167, 183, 180, 184, 177, 178, 175, 181,
172, 173, 169, 172, 177, 178, 185, 186, 190, 187
])
weight_array = np.array([
62, 59, 57, 55, 60, 58, 51, 56, 68, 64,
57, 58, 64, 79, 73, 76, 61, 65, 83, 80,
67, 82, 88, 62, 61, 79, 81, 68, 83, 80
])
plt.scatter(height_array, weight_array) #산점도 그래프 : 두 변수의 연관성 파악
plt.show()
다양한 기능들
plt.scatter(height_array, weight_array, c = 'Green', marker='s')
plt.title('Height and Weight')
plt.xlabel('Height(cm)')
plt.ylabel('Weight(kg)')
plt.show()
728x90