علوم داده

تولید آرایه‌های آماده در NumPy

NumPy طیف گسترده‌ای از توابع را برای ایجاد آرایه‌های آماده با مقادیر از پیش تعریف شده ارائه می‌دهد که می‌توان از آنها برای صرفه‌جویی در زمان و کد در هنگام کار با داده‌های تکراری یا الگوبندی شده استفاده کرد.

در اینجا چند نمونه از توابع رایج برای تولید آرایه‌های آماده در NumPy آورده شده است:

1. آرایه‌های صفر و یک:

  • np.zeros(shape): آرایه‌ای با ابعاد مشخص و مقادیر تمام صفر ایجاد می‌کند.
  • np.ones(shape): آرایه‌ای با ابعاد مشخص و مقادیر تمام یک ایجاد می‌کند.

مثال:

Python
import numpy as np

# ایجاد آرایه 3x3 از صفرها
zeros_array = np.zeros((3, 3))
print(zeros_array)

# ایجاد آرایه 2x4 از یک ها
ones_array = np.ones((2, 4))
print(ones_array)

2. آرایه‌های پر شده:

  • np.full(shape, fill_value): آرایه‌ای با ابعاد مشخص و مقادیر ثابت fill_value ایجاد می‌کند.

مثال:

Python
# ایجاد آرایه 5x5 با مقادیر 3
filled_array = np.full((5, 5), 3)
print(filled_array)

3. آرایه‌های فاصله‌ای:

  • np.arange(start, stop, step): آرایه‌ای از اعداد با مقادیر شروع start، انتهای stop (اختیاری) و گام step ایجاد می‌کند.

مثال:

Python
# ایجاد آرایه از اعداد 0 تا 9 (با گام 1)
arange_array = np.arange(0, 10, 1)
print(arange_array)

# ایجاد آرایه از اعداد 1 تا 10 (با گام 2)
arange_array = np.arange(1, 10, 2)
print(arange_array)

4. آرایه‌های هویتی:

  • np.eye(n): آرایه هویتی n در n ایجاد می‌کند.

مثال:

Python
# ایجاد آرایه هویتی 3x3
identity_array = np.eye(3)
print(identity_array)

5. آرایه‌های تصادفی:

  • np.random.rand(shape): آرایه‌ای با ابعاد مشخص و مقادیر تصادفی یکنواخت بین 0 و 1 ایجاد می‌کند.
  • np.random.randn(shape): آرایه‌ای با ابعاد مشخص و مقادیر تصادفی طبق توزیع نرمال استاندارد ایجاد می‌کند.

مثال:

Python
# ایجاد آرایه 2x2 از مقادیر تصادفی یکنواخت بین 0 و 1
random_array = np.random.rand(2, 2)
print(random_array)

# ایجاد آرایه 3x3 از مقادیر تصادفی طبق توزیع نرمال استاندارد
randn_array = np.random.randn(3, 3)
print(randn_array)

6. توابع مشبک:

  • np.linspace(start, stop, num): آرایه‌ای با num عنصر به طور یکنواخت بین start و stop با در نظر گرفتن stop ایجاد می‌کند.
  • np.logspace(start, stop, num, base=10): آرایه‌ای با num عنصر به طور لگاریتمی بین start و stop با در نظر گرفتن stop و با پایه base (پیش‌فرض 10) ایجاد می‌کند.

مثال:

Python
# ایجاد آرایه 5 عنصری به طور یکنواخت بین 0 و 10
linspace_array = np.linspace(0, 10, 5)
print(linspace_array)

# ایجاد آرایه 5 عنصری به طور لگاریتمی بین 1 و 100
logspace_array = np.logspace(1, 100, 5)
print(logspace_array)

علاوه بر توابع ذکر شده در بالا، NumPy توابع دیگری نیز برای تولید آرایه‌های آماده با الگوهای خاص، مانند مثلثات هیلبرت و ماتریس‌های چرخشی، ارائه می‌دهد.

همچنین می‌توانید از توابع NumPy برای ایجاد آرایه‌های سفارشی با استفاده از عملیات برداری و توابع تعریف شده توسط کاربر استفاده کنید.

مزایای استفاده از آرایه‌های آماده:

  • کارایی: آرایه‌های آماده می‌توانند به طور قابل توجهی سریع‌تر از حلقه‌های for برای ایجاد آرایه‌ها با مقادیر تکراری یا الگوبندی شده باشند.
  • خوانایی: کد شما را مختصرتر و خواناتر می‌کند، زیرا نیازی به نوشتن کد تکراری برای ایجاد آرایه‌ها نیست.
  • قابلیت نگهداری: اشکال‌زدایی و به‌روزرسانی کد شما را آسان‌تر می‌کند، زیرا منطق ایجاد آرایه در یک مکان متمرکز است.

 

مثال‌های اضافی:

  • ایجاد آرایه مثلثات هیلبرت:
Python
import numpy as np

n = 5
hilbert_array = np.zeros((n, n), dtype=np.int)

for i in range(n):
    for j in range(n):
        hilbert_array[i, j] = (i + j) % n + 1

print(hilbert_array)
  • ایجاد ماتریس چرخش حول محور x:
Python
import numpy as np

angle = np.radians(45)
rotation_matrix = np.array([
    [1, 0, 0],
    [0, np.cos(angle), -np.sin(angle)],
    [0, np.sin(angle), np.cos(angle)]
])

print(rotation_matrix)

اینها تنها چند نمونه از کاربردهای مختلف تولید آرایه‌های آماده در NumPy هستند. با کمی خلاقیت، می‌توانید از NumPy برای ایجاد انواع مختلف آرایه‌ها برای نیازهای خاص خود استفاده کنید.

نمایش بیشتر

نوشته‌های مشابه

دیدگاهتان را بنویسید

نشانی ایمیل شما منتشر نخواهد شد. بخش‌های موردنیاز علامت‌گذاری شده‌اند *

دکمه بازگشت به بالا