Tugas Programming
Table of Contents
NumPy Dasar-dasar Komputasi Numerik - This article is part of a series.
1. Manipulasi Array Dasar #
Buatlah fungsi Python yang menerima array NumPy satu dimensi dan mengganti setiap elemen ganjil dengan nilai kuadratnya, sedangkan elemen genap dikalikan dengan 2.
Contoh:
# Input
arr = np.array([1, 2, 3, 4, 5])
# Output
modified_array(arr)
# Output yang diharapkan:
# array([1, 4, 9, 8, 25])
2. Matriks Identitas #
Buatlah fungsi Python yang menghasilkan matriks identitas berukuran n x n menggunakan NumPy.
Contoh:
# Input
n = 3
# Output
identity_matrix(n)
# Output yang diharapkan:
# array([[1., 0., 0.],
# [0., 1., 0.],
# [0., 0., 1.]])
3. Pengindeksan dan Slicing #
Buatlah fungsi Python yang menerima matriks dua dimensi dan mengembalikan bagian tengahnya (tanpa baris pertama dan terakhir serta kolom pertama dan terakhir).
Contoh:
# Input
matrix = np.array([[1, 2, 3],
[4, 5, 6],
[7, 8, 9]])
# Output
middle_slice(matrix)
# Output yang diharapkan:
# array([[5]])
4. Pemrosesan Statistik #
Buatlah fungsi Python yang menerima array satu dimensi dan mengembalikan nilai-nilai statistik dasar seperti rata-rata, median, dan standar deviasi.
Contoh:
# Input
arr = np.array([10, 20, 30, 40, 50])
# Output
basic_statistics(arr)
# Output yang diharapkan:
# {'Mean': 30.0, 'Median': 30.0, 'Standard Deviation': 15.8114}
5. Prediksi Keuangan dengan Regresi #
Buatlah fungsi Python yang menerima dua array NumPy, satu sebagai variabel independen (X) dan yang lain sebagai variabel dependen (Y), dan mengembalikan model regresi linear sederhana.
Contoh:
# Input
X = np.array([1, 2, 3, 4, 5])
Y = np.array([2, 4, 5, 4, 5])
# Output
linear_regression_model(X, Y)
# Output yang diharapkan:
# {'Slope': 0.3, 'Intercept': 2.4}
6. Pemrosesan Citra Medis #
Buatlah fungsi Python yang menerima citra medis (array NumPy) dan mengaplikasikan filter rata-rata (3x3) pada citra tersebut.
Contoh:
# Input
medical_image = np.array([[10, 20, 30],
[40, 50, 60],
[70, 80, 90]])
# Output
apply_average_filter(medical_image)
# Output yang diharapkan:
# array([[33, 44, 55],
# [66, 77, 88],
# [99, 110, 121]])