Massivlarni yaratish. Massivni yaratishning eng oddiy usuli array() funksiyasidan foydalanish bo‘lib, u massiv elementlarini turi bo‘yicha aniq yoki bilvosita ichki joylashtirilgan ro‘yxatlar sifatida belgilaydi.
import numpy as np
a=np.array([[1, 2, 3], [4, 5, 6]], 'float')
print(a)
print(a.shape)
print(a.dtype)
[[1. 2. 3.]
[4. 5. 6.]]
(2, 3)
float64
Roʻyxatdan massiv yaratish va teskari protsedura (tolist() usuli yordamida) quyidagi misolda tasvirlangan:
import numpy as np
lst = [[1, 2, 3], [4, 5, 6]]
a = np.array(lst)
print(a)
print(a.tolist())
[[1 2 3]
[4 5 6]]
[[1, 2, 3], [4, 5, 6]]
Matritsalar bilan ishlashda birlik, nol matritsalar kabi maxsus matritsalar bilan ishlashga to`g`ri keladi. Shuningdek barcha elementlari 1 dan iborat bo`lgan matritsalar ham mavjud. NumPy da bunday massivlarni ishga tushirish vositalari mavjud.
zeros(sh, dt) funksiyasi sh o`lchamdagi nol elementlari va ixtiyoriy dt argumenti – element turi bilan massiv yaratish imkonini beradi. Xuddi shunday, ones(sh, dt) birlik elementlardan iborat massiv hosil qiladi. Asosiy diagonalda birlar va boshqa elementlar uchun nol bo'lgan matritsani hosil qilish uchun eye(n,m) funksiyasidan, kvadrat matritsa uchun eye(n) yoki identity(n) dan foydalaniladi. Massiv yaratishga misollar:
import numpy as np
a0 = np.zeros((2, 3), 'float')
print('a0:\n', a0)
a1 = np.ones((3, 2), 'int')
print('a1:\n', a1)
a2 = np.eye(3, 2, dtype=int)
print('a2:\n', a2)
a3 = np.identity(4, 'float')
print('a3:\n', a3)
Natija:
a0:
[[0. 0. 0.]
[0. 0. 0.]]
a1:
[[1 1]
[1 1]
[1 1]]
a2:
[[1 0]
[0 1]
[0 0]]
a3:
[[1. 0. 0. 0.]
[0. 1. 0. 0.]
[0. 0. 1. 0.]
[0. 0. 0. 1.]]
Bir o'lchovli massivlarni (vektorlarni) shakllantirishning maxsus protseduralari mavjud. arange(start, stop, step) funksiyasi step qadam bilan start qiymatidan stop qiymatigacha (stop bu oraliqqa kirmaydi) qiymatlar qatorini hosil qiladi. Ushbu konstruktsiya array(range (start, stop, step)) ga o`xshaydi, lekin u nafaqat butun sonlar bilan ishlaydi. linspace(start, stop, n) funksiyasi qiymatlari start dan stop gacha (shu jumladan stop ham) teng masofada joylashgan n ta elementdan iborat bir oʻlchovli massivni yaratadi. linspace(start, stop, n) funktsiyasi n ta elementdan iborat bir o'lchovli massivni yaratadi, ularning qiymatlari start dan stop gacha (shu jumladan stop ham) teng taqsimlanadi.
import numpy as np
a0 = np.array(range(1,10,3))
print('a0:\n', a0)
a1 = np.arange(0.,10.,2.)
print('a1:\n', a1)
a2 = np.linspace(0.,1.,11)
print('a2:\n', a2)
Natija:
a0:
[1 4 7]
a1:
[0. 2. 4. 6. 8.]
a2:
[0. 0.1 0.2 0.3 0.4 0.5 0.6 0.7 0.8 0.9 1. ]
Do'stlaringiz bilan baham: |