반응형
✅ 실습 문제 풀이
문제 1: NumPy 배열 생성
1. 1부터 20까지의 숫자로 구성된 1차원 배열을 생성하세요.
2. 위 배열을 4x5의 2차원 배열로 변환하세요.
3. 2차원 배열에서 3번째 행을 출력하세요.
🔹 풀이 코드
import numpy as np
# 1. 1부터 20까지의 숫자로 구성된 1차원 배열 생성
arr1 = np.arange(1, 21)
print("1차원 배열:\n", arr1)
# 2. 4x5의 2차원 배열로 변환
arr2d = arr1.reshape(4, 5)
print("\n2차원 배열:\n", arr2d)
# 3. 2차원 배열에서 3번째 행 출력 (인덱스는 0부터 시작하므로 arr2d[2])
print("\n3번째 행:\n", arr2d[2])
문제 2: NumPy 연산
1. np.arange(1, 10)로 만든 배열을 제곱한 결과를 출력하세요.
2. 두 개의 3x3 랜덤 배열을 생성하고 행렬 곱을 계산하세요.
🔹 풀이 코드
# 1. np.arange(1, 10) 배열을 만들고 각 요소를 제곱
arr = np.arange(1, 10)
arr_squared = arr ** 2
print("각 요소를 제곱한 결과:\n", arr_squared)
# 2. 두 개의 3x3 랜덤 배열 생성 후 행렬 곱 계산
A = np.random.randint(1, 10, (3, 3))
B = np.random.randint(1, 10, (3, 3))
print("\n행렬 A:\n", A)
print("\n행렬 B:\n", B)
# 행렬 곱 계산 (dot product)
result = np.dot(A, B)
print("\n행렬 곱 (A x B):\n", result)
📝 실행 결과 예시
(랜덤 값은 실행할 때마다 다르게 나올 수 있음)
1차원 배열:
[ 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20]
2차원 배열:
[[ 1 2 3 4 5]
[ 6 7 8 9 10]
[11 12 13 14 15]
[16 17 18 19 20]]
3번째 행:
[11 12 13 14 15]
각 요소를 제곱한 결과:
[ 1 4 9 16 25 36 49 64 81]
행렬 A:
[[7 6 3]
[9 3 3]
[7 4 9]]
행렬 B:
[[2 7 6]
[3 3 6]
[9 2 6]]
행렬 곱 (A x B):
[[63 71 90]
[51 84 96]
[99 91 126]]
'십대를 위한 코딩 > 십대를 위한 파이썬' 카테고리의 다른 글
두 코드의 차이점 분석 (0) | 2025.03.08 |
---|---|
[1, 2] vs [1 2] 차이, 파이썬 리스트와 NumPy 배열 (0) | 2025.03.05 |
NumPy 소개 (2) | 2025.03.04 |
Google Colab의 화면은 Jupyter Notebook과 JupyterLab 중 어느 쪽 (2) | 2025.03.03 |
Jupyter Notebook과 JupyterLab (1) | 2025.03.02 |