Numpy Buat tatasusunan 2D

Numpy Buat Tatasusunan 2d



Tatasusunan Numpy dua dimensi ditakrifkan daripada senarai senarai python. Sama seperti tatasusunan Numpy dimensi tunggal, semua elemen dalam tatasusunan mestilah daripada satu jenis. Jika tatasusunan NumPy diisytiharkan dengan senarai berbilang jenis, paksaan jenis akan berlaku dan semua nilai akan ditukar kepada satu jenis. Paksaan jenis ialah jenis data yang ditukar daripada satu kepada yang lain, ia secara tersirat atau automatik. Dalam tatasusunan dua dimensi, dimensi boleh lebih daripada dua.

Dengan kata mudah, kita boleh menentukan tatasusunan dua dimensi sebagai tatasusunan dalam tatasusunan lain. Indeksnya bermula dengan '0' dan berakhir pada saiz tatasusunan '-1'. Tatasusunan boleh dibina n kali dalam tatasusunan. Tatasusunan dua dimensi boleh menukar saiz secara menegak dan mendatar, dalam kedua-dua arah.

Sintaks

Sintaks untuk mengisytiharkan tatasusunan adalah seperti di bawah:







array_name = [ r_arr ] [ c_arr ]

array_name ialah nama array yang ingin kita buat. Manakala, 'r_arr' ialah baris tatasusunan dan 'c_arr' ialah lajur tatasusunan. Sintaks ini membolehkan kita mencipta lokasi memori di mana tatasusunan akan disimpan, atau kita boleh mengatakan bahawa lokasi memori boleh ditempah untuk tatasusunan.



Terdapat kaedah lain untuk mengisytiharkan tatasusunan 2D:



array_name = [ [ R1C1 , R1C2 , R1C3 , ... ] , [ R2C2 , R2C2 , R2C3 , ... ] , . . .. ]

Dalam sintaks di atas, nama tatasusunan ialah nama tatasusunan dengan 'R1C1', 'R2C1', ... n ialah elemen tatasusunan dengan 'R' menandakan baris dan 'c' menandakan lajur. Seperti yang dapat kita lihat dalam kurungan empat segi pertama, bilangan baris berubah manakala lajur adalah sama. Ini kerana, dalam tatasusunan, kami mentakrifkan lajur menggunakan berbilang tatasusunan manakala baris ditakrifkan di dalam tatasusunan dalam.





Contoh # 01: Mencipta Tatasusunan Dua Dimensi

Mari kita berikan contoh praktikal untuk mencipta tatasusunan dua dimensi dan dapatkan idea yang lebih baik tentang cara tatasusunan dua dimensi dicipta. Untuk mencipta tatasusunan 2D, kami mula-mula mengimport perpustakaan NumPy kami yang akan membolehkan kami melaksanakan beberapa pakej yang NumPy sediakan kepada kami untuk mencipta tatasusunan. Seterusnya, kami akan memulakan pembolehubah yang memegang tatasusunan dua dimensi untuk mencipta tatasusunan. Kami akan lulus fungsi np.array() yang membolehkan kami berdua mencipta sebarang jenis tatasusunan sama ada 1D, 2D atau sebagainya. Untuk fungsi itu, kami akan menghantar berbilang tatasusunan dalam tatasusunan ini yang membolehkan kami mencipta tatasusunan 2 dimensi.

Seperti yang kita boleh lihat dalam tangkapan skrin di bawah, dalam baris kedua, kami lulus tiga tatasusunan kepada fungsi itu yang bermaksud kami mempunyai tiga baris dan dalam tatasusunan tersebut, kami menghantar 6 elemen kepada setiap satu yang bermakna terdapat 6 lajur. Satu perkara yang perlu diperhatikan, ialah kita sentiasa melepasi elemen dalam kurungan segi empat sama yang bermaksud kita menghantar elemen tatasusunan dan kita dapat melihat bahawa kita telah melepasi berbilang tatasusunan dalam tatasusunan tunggal.



import numpy sebagai cth.

tatasusunan = cth. tatasusunan ( [ [ 1 , dua , 3 , 4 , 5 , 6 ] , [ 4 , 5 , 6 , 7 , 8 , 9 ] , [ 7 , 8 , 9 , 10 , sebelas , 12 ] ] )

cetak ( tatasusunan )

Pada akhirnya, kami mencetak tatasusunan menggunakan pernyataan cetakan. Seperti yang ditunjukkan dalam tangkapan skrin di bawah, kita dapat melihat tatasusunan dipaparkan yang mengandungi 3 baris dan 6 lajur.

Contoh # 02: Mengakses Nilai

Semasa kita mengkaji kaedah untuk mencipta tatasusunan 2D, satu perkara mesti terlintas dalam fikiran kita: bagaimanakah kita boleh mengakses elemen tatasusunan 2D? Walaupun mengakses elemen tatasusunan 2D bukanlah isu besar. Numpy membolehkan kami memanipulasi elemen tatasusunan dengan baris kod ringkas iaitu:

Susunan [ indeks baris ] [ indeks lajur ]

Tatasusunan ialah nama tatasusunan yang daripadanya kita perlu mengakses atau mengambil data di mana indeks baris ialah lokasi memori baris. Dan indeks lajur ialah lokasi lajur untuk diakses, katakan kita perlu mengakses elemen indeks '2' baris dan indeks '0' elemen lajur.

Seperti yang dapat kita lihat dalam rajah di bawah, kami mula-mula mengimport perpustakaan NumPy untuk mengakses pakej NumPy. Kemudian, kami mengisytiharkan nama pembolehubah 'array' yang memegang tatasusunan 2D dan kemudian memberikan nilai yang ingin kami simpan di dalamnya. Kami mula-mula memaparkan tatasusunan seperti yang telah kami mulakan. Kemudian, kami lulus tatasusunan dengan indeks ke pernyataan print() kami yang akan memaparkan keseluruhan tatasusunan yang disimpan pada indeks '2'. Dalam baris kod seterusnya, kami sekali lagi melepasi tatasusunan dengan dua indeks kepada pernyataan print(). Yang pertama ialah baris tatasusunan dan yang kedua ialah lajur tatasusunan iaitu '0' dan '2'.

import numpy sebagai cth.

tatasusunan = cth. tatasusunan ( [ [ 1 , dua , 3 , 4 , 5 , 6 ] , [ 4 , 5 , 6 , 7 , 8 , 9 ] , [ 7 , 8 , 9 , 10 , sebelas , 12 ] ] )

cetak ( 'Paparan tatasusunan:' , tatasusunan )

cetak ( 'Paparkan baris kedua:' , tatasusunan [ dua ] )

cetak ( 'Paparkan baris pertama dan 2 elemen lajur:' , tatasusunan [ 0 ] [ dua ] )

Output berikut dikembalikan semasa menjalankan pengkompil kod mencetak tatasusunan sebagaimana adanya. Kemudian, baris kedua mengikut kod. Akhir sekali, pengkompil mengembalikan elemen yang disimpan pada indeks '0' untuk baris dan indeks '2' untuk lajur.

Contoh #03: Mengemas kini Nilai

Kami telah membincangkan metodologi bagaimana kami boleh mencipta atau mengakses data atau elemen dalam tatasusunan 2D, tetapi apabila kami perlu menukar elemen tatasusunan, kami hanya boleh menggunakan kaedah yang disediakan oleh pakej NumPy yang membenarkan kami untuk mengemas kini nilai yang dikehendaki dalam tatasusunan.

Untuk mengemas kini nilai, kami menggunakan:

tatasusunan [ row_index ] [ indeks_lajur ] = [ nilai ]

Dalam sintaks di atas, tatasusunan ialah nama tatasusunan. Indeks baris ialah tempat atau lokasi yang akan kami edit. Indeks lajur ialah lokasi lajur di mana nilai dikemas kini, di mana nilai adalah nilai yang perlu ditambah pada indeks yang dikehendaki.

Seperti yang kita dapat lihat, kami mula-mula mengimport perpustakaan NumPy kami. Dan kemudian mengisytiharkan tatasusunan saiz 3×6 dan melepasi nilai integernya. Kemudian, kami menghantar nilai '21' kepada tatasusunan yang bermaksud kami mahu menyimpan nilai '21' dalam tatasusunan pada '0' baris dan '2' lajur yang bermaksud kami mahu menyimpannya pada indeks baris pertama dan 3 rd lajur tatasusunan. Kemudian cetak kedua-dua tatasusunan, yang asal dan juga elemen yang telah kami simpan dalam tatasusunan.

import numpy sebagai cth.

tatasusunan = cth. tatasusunan ( [ [ 1 , dua , 3 , 4 , 5 , 6 ] , [ 4 , 5 , 6 , 7 , 8 , 9 ] , [ 7 , 8 , 9 , 10 , sebelas , 12 ] ] )

tatasusunan [ 0 ] [ dua ] = dua puluh satu

cetak ( 'Paparan tatasusunan:' , tatasusunan )

cetak ( 'Paparkan baris pertama dan 2 elemen lajur:' , tatasusunan [ 0 ] [ dua ] )

Seperti yang dipaparkan di bawah, nilai berjaya dikemas kini dalam tatasusunan dengan hanya menambah baris kod ringkas yang disediakan oleh pakej NumPy.

Kesimpulan

Dalam artikel ini, kami menerangkan cara yang berbeza untuk mencipta tatasusunan dua dimensi dan cara kami boleh memanipulasinya menggunakan fungsi terbina dalam NumPy. Kami membincangkan cara kami boleh mengakses elemen dalam tatasusunan dan mengemas kininya. Numpy membolehkan kami mencipta dan memanipulasi tatasusunan berbilang dimensi dengan satu baris kod. Tatasusunan numpy lebih jelas dan lebih berkesan daripada senarai python.