Lewati ke konten utama

Cara Menggunakan Fungsi NumPy linspace()

Pelajari cara menggunakan fungsi NumPy linspace() dalam tutorial cepat dan mudah ini.

Jelajahi bersama AI

NumPy adalah paket penting dalam ekosistem ilmu data Python, menawarkan beragam fungsi untuk memanipulasi data numerik secara efisien. Di antaranya, fungsi linspace() sering digunakan untuk menghasilkan nilai yang berjarak sama pada suatu interval tertentu, sehingga menjadi alat yang berguna untuk tugas yang memerlukan rentang numerik presisi, seperti visualisasi data dan pemodelan matematis. Dalam tutorial ini, saya akan menunjukkan seluk-beluk fungsi linspace().

Jawaban Singkat: Cara Menggunakan np.linspace()

Jika Anda terburu-buru, berikut penjelasan paling cepat tentang fungsi linspace(). Fungsi linspace() dari NumPy menghasilkan array berisi angka-angka dengan jarak yang sama dalam sebuah interval yang ditentukan. Di sini, misalnya, kita membuat array yang dimulai dari 0 dan berakhir di 100, dalam interval 5 angka. Seperti yang dapat Anda harapkan, fungsi ini mengembalikan array [0, 25, 75, 100].

import numpy as np

# Basic usage of linspace to create an array from 0 to 100 with 5 elements
linspace_example = np.linspace(0, 100.0, 5)
linspace_example # Return example

# Output: array([  0.,  25.,  50.,  75., 100.])

Mengapa menggunakan fungsi linspace() dari NumPy?

Fungsi linspace() adalah metode yang sederhana dan efisien untuk menghasilkan nilai yang berjarak linier, menawarkan solusi berguna untuk berbagai skenario ketika rentang numerik tertentu dibutuhkan, seperti dalam visualisasi data, simulasi, dan bahkan penyetelan algoritme. Berikut beberapa contoh penggunaan linspace():

  • Tugas visualisasi data: Misalnya, saat membuat grafik garis untuk merepresentasikan lintasan satelit terhadap waktu, linspace() dapat digunakan untuk menghasilkan interval waktu tempat data posisi diambil sampelnya, memastikan garis yang halus dan kontinu pada grafik.
  • Simulasi: Dalam pemodelan keuangan, untuk menilai dampak variasi suku bunga terhadap harga obligasi, linspace() dapat menghasilkan rentang suku bunga dari yang terendah hingga yang tertinggi yang diperkirakan, memungkinkan analisis menyeluruh di seluruh spektrum.
  • Riset ilmiah: Saat mempelajari dampak pemanasan global pada lapisan es kutub, peneliti dapat menggunakan linspace() untuk membuat serangkaian interval waktu yang berjarak sama selama beberapa dekade. Pada setiap interval, mereka dapat mensimulasikan kenaikan suhu rata-rata global dan dampaknya terhadap laju pencairan es.

Sintaks dan Penggunaan NumPy linspace() beserta Contohnya

Seperti disebutkan sebelumnya, fungsi linspace() membuat nilai yang berjarak linier yang berguna untuk berbagai komputasi numerik. Sebelum masuk ke contoh, mari kita lihat berbagai argumen yang dapat Anda gunakan saat memakai linspace().

Argumen NumPy linspace()

  • start: Nilai awal dari urutan.
  • stop: Nilai akhir dari urutan.
  • num (opsional): Interval yang ditentukan. Nilai default adalah 50, dan harus non-negatif.
  • endpoint (opsional): Jika True (default), stop adalah sampel terakhir. Jika False, nilai stop tidak disertakan dalam urutan yang dihasilkan oleh linspace(). Ini berarti fungsi akan membuat sampel berjarak sama dalam rentang dari start hingga tepat sebelum stop, sehingga mengecualikan nilai stop itu sendiri dari urutan. Ini bisa berguna saat Anda memerlukan rentang yang mendekati namun tidak mencapai titik akhir, memungkinkan kontrol yang lebih fleksibel atas rentang nilai yang dihasilkan.
  • retstep (opsional): Jika True, mengembalikan (samples, step), di mana step adalah jarak antar sampel.
  • dtype (opsional): Tipe dari array keluaran. Jika tidak diberikan, dtype akan ditentukan oleh argumen start dan stop.
  • axis (opsional): Sumbu dalam hasil untuk menyimpan sampel, hanya ketika bekerja dengan array multi-dimensi.

Membuat array 1-dimensi dengan linspace()

Sekarang kita telah memahami dengan baik argumen yang tersedia di linspace(), mari kita lihat beberapa contoh penggunaannya!

Membuat array 1-dimensi berjarak sama menggunakan linspace()

Contoh ini membuat array berisi 7 angka yang berjarak sama antara 0 dan 10.

import numpy as np

# Create an array of 7 evenly spaced elements from 0 to 10
uniform_array = np.linspace(0, 10, num=7)
print("Uniform Array")
uniform_array
Uniform Array
array([ 0., 1.66666667, 3.33333333, 5., 6.66666667,8.33333333, 10.])

Mengecualikan endpoint dalam array 1-dimensi berjarak sama menggunakan linspace()

Pada kasus ini, kita menghasilkan array berisi 8 angka antara 10 dan 20, tetapi mengecualikan nilai terakhir (20) dari array, menampilkan argumen endpoint dalam praktik.

import numpy as np


# Create an array of 8 elements from 10 to 20, excluding 20
exclude_final_array = np.linspace(10, 20, num=8, endpoint=False)
print("Array Excluding Final Value")
exclude_final_array
Array Excluding Final Value
array([10. , 11.25, 12.5 , 13.75, 15. , 16.25, 17.5 , 18.75])

Menyertakan ukuran langkah dalam array 1-dimensi berjarak sama menggunakan linspace()

Di sini, kita membuat array berisi 4 elemen antara -5 dan 5. Kita juga menangkap dan menampilkan ukuran langkahnya.

import numpy as np


# Create an array of 4 elements from -5 to 5 and capture the step size
step_array, step = np.linspace(-5, 5, num=4, retstep=True)
print("Array with Defined Step Size", step_array)
print("Step Size", step)
Array with Defined Step Size [-5.         -1.66666667  1.66666667  5.        ]
Step Size 3.3333333333333335

Membuat array N-dimensi dengan linspace()

linspace() juga berguna untuk menghasilkan array multi-dimensi. Di sini, kami menampilkan beberapa contoh penggunaannya.

Menghasilkan array 2-dimensi menggunakan linspace()

Contoh ini mengilustrasikan cara menghasilkan array 2D di mana setiap baris bertransisi mulus dari vektor [0, 10] ke [5, 15], menciptakan efek gradasi dalam 4 langkah.

import numpy as np


# Perform column-wise linear interpolation from [10, 20] to [15, 25] over 3 steps
column_interpolation_array = np.linspace([10, 20], [15, 25], num=3, axis=1)
print("Column-wise Interpolation Array:")
print(column_interpolation_array)
Column-wise Interpolation Array:
[[10.  12.5 15. ]
 [20.  22.5 25. ]]

Alternatif untuk NumPy linspace()

Meskipun linspace() sangat berguna, ada alternatif yang patut dipertimbangkan, seperti fungsi arange() milik NumPy dan list comprehension.

Menggunakan fungsi NumPy arange()

Fungsi arange() menghasilkan nilai dalam sebuah interval tertentu. Berbeda dengan linspace(), jarak antar nilai yang ditentukan, bukan jumlah nilainya.

# Using arange to generate values from 0 to 10, spaced by 2
arange_example = np.arange(0, 10, 2)
arange_example

# Returns array([0, 2, 4, 6, 8])

# Using linspace() to generate values from 0 to 10, with interval set to 2
linspace_example = np.linspace(0, 10, 2)
linspace_example

# Returns array([0.,10.0])

Menggunakan list comprehension

List comprehension menyediakan cara yang lebih Pythonic untuk membuat daftar, meskipun tidak memiliki manfaat vektorisasi dan fleksibilitas seperti NumPy linspace().

list_comp = [x for x in range(10)]
print(list_comp)

# Outputs [0, 1, 2, 3, 4, 5, 6, 7, 8, 9]

Penutup

Fungsi linspace() dari NumPy adalah alat mendasar dalam perlengkapan ilmu data, menawarkan presisi dan fleksibilitas dalam menghasilkan deret numerik. Jika Anda ingin mengasah kemampuan NumPy, lihat tutorial ini tentang Array NumPy, Cheat Sheet NumPy ini, atau pertimbangkan untuk mendaftar di kursus Introduction to NumPy kami.

Adel Nehme

Penulis

Adel Nehme

Adel adalah pendidik Data Science, pembicara, dan VP Media di DataCamp. Adel telah merilis berbagai kursus dan pelatihan langsung tentang analisis data, machine learning, dan rekayasa data. Ia bersemangat menyebarkan keterampilan dan literasi data di seluruh organisasi serta mengeksplorasi persinggungan teknologi dan masyarakat. Ia meraih gelar MSc di bidang Data Science dan Business Analytics. Di waktu luang, Anda bisa menemukannya bersantai bersama kucingnya, Louis.

Topik

Terkait

blogs

Tutorial Korelasi di R

blogs

Spaghetti Plot dan Jalur Badai