실습 문제 (NumPy / Matplotlib)

문제 001

import numpy as np

def Exam001():
    result = np.array([1, 2, 3, 4, 5, 6, 7, 8, 9])  # 1~9 값을 배열로 만든다
    result = result.reshape(3, 3)  # 3x3 모양으로 바꾼다
    return result  # 변환된 배열을 반환한다

import pylib014 as pp  # pylib014 모듈을 pp로 불러온다
pp.Exam001()  # 모듈에 있는 함수를 호출한다

문제 002

import numpy as np

def Exam002():
    result = np.random.rand(9)  # 0~1 사이 난수를 9개 만든다
    result = result.reshape(3, 3)  # 3x3 모양으로 바꾼다
    return result  # 난수 배열을 반환한다

import pylib014 as pp  # pylib014 모듈을 pp로 불러온다
pp.Exam002()  # 모듈에 있는 함수를 호출한다

문제 003

import numpy as np

def Exam003():
    result = np.random.rand(100)  # 난수 100개로 배열을 만든다
    result = result.reshape(10, 10)  # 10x10 모양으로 바꾼다
    return f"최소값 {result.min()} 최대값 {result.max()}"  # 최소/최대값을 문자열로 반환한다

import pylib014 as pp  # pylib014 모듈을 pp로 불러온다
pp.Exam003()  # 모듈에 있는 함수를 호출한다

문제 004

import numpy as np

def Exam004():
    res = np.ones((3, 3))  # 3x3을 1로 채워 만든다
    res[1:-1, 1:-1] = 0  # 가운데 부분만 0으로 바꾼다
    return res  # 테두리만 1인 배열을 반환한다

import pylib014 as pp  # pylib014 모듈을 pp로 불러온다
print(pp.Exam004())  # 결과를 확인하려고 출력한다

문제 005

import numpy as np

def Exam005():
    res = np.zeros((5, 5))  # 5x5를 0으로 채워 만든다
    res[::2, 1::2] = 1  # 짝수 행의 홀수 열을 1로 바꾼다
    res[1::2, ::2] = 1  # 홀수 행의 짝수 열을 1로 바꾼다
    return res  # 체커보드 패턴 배열을 반환한다

import pylib014 as pp  # pylib014 모듈을 pp로 불러온다
pp.Exam005()  # 모듈에 있는 함수를 호출한다

문제 006

import numpy as np

def Exam006():
    result = np.random.rand(9)  # 난수 9개로 배열을 만든다
    result = result.reshape(3, 3)  # 3x3 모양으로 바꾼다
    result = (result - result.mean()) / result.std()  # 평균과 표준편차로 표준화한다
    return result  # 표준화된 배열을 반환한다

import pylib014 as pp  # pylib014 모듈을 pp로 불러온다
pp.Exam006()  # 모듈에 있는 함수를 호출한다

문제 007

import numpy as np

def Exam007():
    result = np.arange(0, 10)  # 0부터 9까지 배열을 만든다
    result[5:9] = result[5:9] * -1  # 5~8 구간을 음수로 바꾼다
    print(result)  # 바뀐 결과를 출력한다

import pylib014 as pp  # pylib014 모듈을 pp로 불러온다
pp.Exam007()  # 모듈에 있는 함수를 호출한다

문제 008

import numpy as np

def Exam008():
    result = np.arange(0, 9).reshape(3, 3)  # 0~8을 3x3 배열로 만든다
    col_sum = result.sum(axis=0)  # 열 합을 구한다
    row_sum = result.sum(axis=1)  # 행 합을 구한다
    total_sum = result.sum()  # 전체 합을 구한다
    print(total_sum, col_sum, row_sum)  # 결과를 한 번에 출력한다

import pylib014 as pp  # pylib014 모듈을 pp로 불러온다
pp.Exam008()  # 모듈에 있는 함수를 호출한다

문제 009

import numpy as np

def Exam009():
    v1 = np.array([4, 5])  # 첫 번째 벡터를 만든다
    v2 = np.array([7, 10])  # 두 번째 벡터를 만든다
    dot = v1 @ v2  # @ 연산으로 내적을 구한다
    print(f"벡터의 내적: {dot}")  # 내적 결과를 출력한다

import pylib014 as pp  # pylib014 모듈을 pp로 불러온다
pp.Exam009()  # 모듈에 있는 함수를 호출한다

문제 010