NumPy، کتابخانهای قدرتمند برای محاسبات عددی در پایتون، به شما امکان میدهد انواع مختلفی از آرایهها را با استفاده از روشهای گوناگون ایجاد کنید. این راهنمای جامع 10 روش رایج برای تولید آرایه در NumPy را به شما معرفی میکند:
1. تابع np.array:
- متداولترین روش برای ایجاد آرایه
- تبدیل لیستها، تاپلها و سایر مجموعههای داده پایتون به آرایههای NumPy
Python
import numpy as np
# ایجاد آرایه از لیست
array_from_list = np.array([1, 2, 3, 4, 5])
# ایجاد آرایه از تاپل
array_from_tuple = np.array((6, 7, 8, 9, 10))
2. تابع np.zeros:
- ایجاد آرایهای با ابعاد مشخص و مقادیر تمام صفر
Python
# ایجاد آرایه 3x3 از صفرها
zeros_array = np.zeros((3, 3))
3. تابع np.ones:
- ایجاد آرایهای با ابعاد مشخص و مقادیر تمام یک
Python
# ایجاد آرایه 2x4 از یک ها
ones_array = np.ones((2, 4))
4. تابع np.full:
- ایجاد آرایهای با ابعاد مشخص و مقادیر ثابت دلخواه
Python
# ایجاد آرایه 5x5 با مقادیر 3
filled_array = np.full((5, 5), 3)
5. تابع np.arange:
- ایجاد آرایهای از اعداد با مقادیر شروع، توقف (اختیاری) و گام دلخواه
Python
# ایجاد آرایه از اعداد 0 تا 9 (با گام 1)
arange_array = np.arange(0, 10, 1)
# ایجاد آرایه از اعداد 1 تا 10 (با گام 2)
arange_array = np.arange(1, 10, 2)
6. تابع np.eye:
- ایجاد آرایه هویتی با ابعاد دلخواه
Python
# ایجاد آرایه هویتی 3x3
identity_array = np.eye(3)
7. توابع تصادفی NumPy:
np.random.rand(shape): آرایهای با ابعاد مشخص و مقادیر تصادفی یکنواخت بین 0 و 1 ایجاد میکند.np.random.randn(shape): آرایهای با ابعاد مشخص و مقادیر تصادفی طبق توزیع نرمال استاندارد ایجاد میکند.
Python
# ایجاد آرایه 2x2 از مقادیر تصادفی یکنواخت بین 0 و 1
random_array = np.random.rand(2, 2)
# ایجاد آرایه 3x3 از مقادیر تصادفی طبق توزیع نرمال استاندارد
randn_array = np.random.randn(3, 3)
8. توابع مشبک NumPy:
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)
# ایجاد آرایه 5 عنصری به طور لگاریتمی بین 1 و 100
logspace_array = np.logspace(1, 100, 5)
9. توابع تخصصی:
np.linspaceبرای ایجاد آرایههای یکنواخت با گام مشخصnp.logspaceبرای ایجاد آرایههای لگاریتمی با گام مشخصnp.meshgridبرای ایجاد شبکهای از مقادیر دو بعدیnp.diagبرای ایجاد آرایه قطرnp.fromfileبرای بارگیری دادهها از فایل به عنوان آرایهnp.frombufferبرای بارگیری دادهها از بافر به عنوان آرایهnp.fromstringبرای تبدیل رشته به آرایه
10. توابع تعریف شده توسط کاربر:
- استفاده از
np.arrayبرای تبدیل خروجی توابع دلخواه به آرایه
مثالهای اضافی:
- ایجاد شبکهای از مقادیر دو بعدی:
Python
import numpy as np
x = np.linspace(0, 10, 5)
y = np.linspace(0, 5, 3)
X, Y = np.meshgrid(x, y)
print(X)
print(Y)
- ایجاد آرایه قطر:
Python
# ایجاد آرایه قطر 3x3
diagonal_array = np.diag([1, 2, 3])
print(diagonal_array)
- بارگیری دادهها از فایل به عنوان آرایه:
Python
# بارگیری دادهها از فایل CSV به عنوان آرایه NumPy
data = np.fromfile('data.csv', delimiter=',')
print(data)
- بارگیری دادهها از بافر به عنوان آرایه:
Python
# ایجاد آرایه از اعداد صحیح 8 بیتی
buffer = np.array([1, 2, 3, 4, 5], dtype=np.uint8)
# بارگیری دادهها از بافر به عنوان آرایه NumPy
array_from_buffer = np.frombuffer(buffer, dtype=np.float32)
print(array_from_buffer)
- تبدیل رشته به آرایه:
Python
# تبدیل رشته به آرایه NumPy از اعداد صحیح
string = "1 2 3 4 5"
string_array = np.fromstring(string, dtype=np.int32, sep=' ')
print(string_array)
نکات:
- انتخاب روش مناسب برای ایجاد آرایه به نیازها و نوع دادههای شما بستگی دارد.
- برای آشنایی با جزئیات بیشتر هر تابع، به مستندات NumPy مراجعه کنید.
- از توابع NumPy برای دستکاری و آنالیز دادههای خود به طور کارآمد استفاده کنید.
با استفاده از این 10 روش، میتوانید به راحتی انواع مختلفی از آرایهها را در NumPy برای نیازهای مختلف خود ایجاد کنید.



