NumPy، کتابخانهای قدرتمند برای محاسبات عددی در پایتون، به شما امکان میدهد انواع مختلفی از آرایهها را با استفاده از روشهای گوناگون ایجاد کنید. این راهنمای جامع ۱۰ روش رایج برای تولید آرایه در NumPy را به شما معرفی میکند:
۱. تابع np.array
:
- متداولترین روش برای ایجاد آرایه
- تبدیل لیستها، تاپلها و سایر مجموعههای داده پایتون به آرایههای NumPy
Python
import numpy as np
# ایجاد آرایه از لیست
array_from_list = np.array([۱, ۲, ۳, ۴, ۵])
# ایجاد آرایه از تاپل
array_from_tuple = np.array((۶, ۷, ۸, ۹, ۱۰))
۲. تابع np.zeros
:
- ایجاد آرایهای با ابعاد مشخص و مقادیر تمام صفر
Python
# ایجاد آرایه 3x3 از صفرها
zeros_array = np.zeros((۳, ۳))
۳. تابع np.ones
:
- ایجاد آرایهای با ابعاد مشخص و مقادیر تمام یک
Python
# ایجاد آرایه 2x4 از یک ها
ones_array = np.ones((۲, ۴))
۴. تابع np.full
:
- ایجاد آرایهای با ابعاد مشخص و مقادیر ثابت دلخواه
Python
# ایجاد آرایه 5x5 با مقادیر ۳
filled_array = np.full((۵, ۵), ۳)
۵. تابع np.arange
:
- ایجاد آرایهای از اعداد با مقادیر شروع، توقف (اختیاری) و گام دلخواه
Python
# ایجاد آرایه از اعداد ۰ تا ۹ (با گام ۱)
arange_array = np.arange(۰, ۱۰, ۱)
# ایجاد آرایه از اعداد ۱ تا ۱۰ (با گام ۲)
arange_array = np.arange(۱, ۱۰, ۲)
۶. تابع np.eye
:
- ایجاد آرایه هویتی با ابعاد دلخواه
Python
# ایجاد آرایه هویتی 3x3
identity_array = np.eye(۳)
۷. توابع تصادفی NumPy:
np.random.rand(shape)
: آرایهای با ابعاد مشخص و مقادیر تصادفی یکنواخت بین ۰ و ۱ ایجاد میکند.np.random.randn(shape)
: آرایهای با ابعاد مشخص و مقادیر تصادفی طبق توزیع نرمال استاندارد ایجاد میکند.
Python
# ایجاد آرایه 2x2 از مقادیر تصادفی یکنواخت بین ۰ و ۱
random_array = np.random.rand(۲, ۲)
# ایجاد آرایه 3x3 از مقادیر تصادفی طبق توزیع نرمال استاندارد
randn_array = np.random.randn(۳, ۳)
۸. توابع مشبک NumPy:
np.linspace(start, stop, num)
: آرایهای باnum
عنصر به طور یکنواخت بینstart
وstop
با در نظر گرفتنstop
ایجاد میکند.np.logspace(start, stop, num, base=10)
: آرایهای باnum
عنصر به طور لگاریتمی بینstart
وstop
با در نظر گرفتنstop
و با پایهbase
(پیشفرض ۱۰) ایجاد میکند.
Python
# ایجاد آرایه ۵ عنصری به طور یکنواخت بین ۰ و ۱۰
linspace_array = np.linspace(۰, ۱۰, ۵)
# ایجاد آرایه ۵ عنصری به طور لگاریتمی بین ۱ و ۱۰۰
logspace_array = np.logspace(۱, ۱۰۰, ۵)
۹. توابع تخصصی:
np.linspace
برای ایجاد آرایههای یکنواخت با گام مشخصnp.logspace
برای ایجاد آرایههای لگاریتمی با گام مشخصnp.meshgrid
برای ایجاد شبکهای از مقادیر دو بعدیnp.diag
برای ایجاد آرایه قطرnp.fromfile
برای بارگیری دادهها از فایل به عنوان آرایهnp.frombuffer
برای بارگیری دادهها از بافر به عنوان آرایهnp.fromstring
برای تبدیل رشته به آرایه
۱۰. توابع تعریف شده توسط کاربر:
- استفاده از
np.array
برای تبدیل خروجی توابع دلخواه به آرایه
مثالهای اضافی:
- ایجاد شبکهای از مقادیر دو بعدی:
Python
import numpy as np
x = np.linspace(۰, ۱۰, ۵)
y = np.linspace(۰, ۵, ۳)
X, Y = np.meshgrid(x, y)
print(X)
print(Y)
- ایجاد آرایه قطر:
Python
# ایجاد آرایه قطر 3x3
diagonal_array = np.diag([۱, ۲, ۳])
print(diagonal_array)
- بارگیری دادهها از فایل به عنوان آرایه:
Python
# بارگیری دادهها از فایل CSV به عنوان آرایه NumPy
data = np.fromfile('data.csv', delimiter=',')
print(data)
- بارگیری دادهها از بافر به عنوان آرایه:
Python
# ایجاد آرایه از اعداد صحیح ۸ بیتی
buffer = np.array([۱, ۲, ۳, ۴, ۵], dtype=np.uint8)
# بارگیری دادهها از بافر به عنوان آرایه NumPy
array_from_buffer = np.frombuffer(buffer, dtype=np.float32)
print(array_from_buffer)
- تبدیل رشته به آرایه:
Python
# تبدیل رشته به آرایه NumPy از اعداد صحیح
string = "۱ ۲ ۳ ۴ ۵"
string_array = np.fromstring(string, dtype=np.int32, sep=' ')
print(string_array)
نکات:
- انتخاب روش مناسب برای ایجاد آرایه به نیازها و نوع دادههای شما بستگی دارد.
- برای آشنایی با جزئیات بیشتر هر تابع، به مستندات NumPy مراجعه کنید.
- از توابع NumPy برای دستکاری و آنالیز دادههای خود به طور کارآمد استفاده کنید.
با استفاده از این ۱۰ روش، میتوانید به راحتی انواع مختلفی از آرایهها را در NumPy برای نیازهای مختلف خود ایجاد کنید.