logo

Convertiți lista Python în matrice numpy

O listă în Python este o structură de date liniară care poate conține elemente eterogene care nu necesită declarare și sunt flexibile pentru a se micșora și crește. Pe de altă parte, o matrice este o structură de date care poate conține elemente omogene. Matricele sunt implementate în Python folosind NumPy bibliotecă. Matricele necesită mai puțină memorie decât liste . Asemănarea dintre o matrice și o listă este că elementele atât ale matricei, cât și ale unei liste pot fi identificate prin valoarea sa de index.

Exemplu



  Input:   [1, 7, 0, 6, 2, 5, 6]   Output:   [1 7 0 6 2 5 6]   Explanation:   Given Python List is converted into NumPy Array>

Convertiți lista Python în tablouri Numpy

În Piton , listele pot fi convertite în matrice folosind două metode din biblioteca NumPy:

  • Folosind numpy.array()
  • Folosind numpy.asarray()

Python List la NumPy Arrays folosind numpy.array()

În Python, cel mai simplu mod de a converti o listă într-o matrice NumPy este utilizarea funcției numpy.array(). Ia un argument și returnează o matrice NumPy ca rezultat. Acesta creează o nouă copie în memorie și returnează o nouă matrice.

Python3






fișier .tif



# importing library> import> numpy> # initializing list> lst>=> [>1>,>7>,>0>,>6>,>2>,>5>,>6>]> # converting list to array> arr>=> numpy.array(lst)> # displaying list> print> (>'List: '>, lst)> # displaying array> print> (>'Array: '>, arr)>

>

>

Ieșire:

List: [1, 7, 0, 6, 2, 5, 6] Array: [1 7 0 6 2 5 6]>

Python List la NumPy Arrays folosind numpy.asarray()

În Numpy, numpy.asarray() este o funcție care convertește datele de intrare în matrice NumPy. Ia un argument și returnează o matrice NumPy. Nu creează o copie nouă în memorie.

Python3




# importing library> import> numpy> # initializing list> lst>=> [>1>,>7>,>0>,>6>,>2>,>5>,>6>]> # converting list to array> arr>=> numpy.asarray(lst)> # displaying list> print> (>'List:'>, lst)> # displaying array> print> (>'Array: '>, arr)>

java cum se convertesc șirul în int
>

>

Ieșire:

care este sistemul de fișiere linux
List: [1, 7, 0, 6, 2, 5, 6] Array: [1 7 0 6 2 5 6]>

Diferența dintre numpy.array() și numpy.asarray()

Diferența vitală dintre cele două metode de mai sus este că numpy.array() va face o copie a obiectului original și numpy.asarray() va oglindi modificările din obiectul original. Când o copie a matricei este făcută folosind numpy.asarray(), modificările făcute într-o matrice vor fi reflectate și în cealaltă matrice, dar nu arată modificările din listă prin care se face matricea. Cu toate acestea, acest lucru nu se întâmplă cu numpy.array().

Python3




# importing library> import> numpy> # initializing list> lst>=> [>1>,>7>,>0>,>6>,>2>,>5>,>6>]> # converting list to array> arr>=> numpy.asarray(lst)> # displaying list> print> (>'List:'>, lst)> # displaying array> print> (>'arr: '>, arr)> # made another array out of arr using asarray function> arr1>=> numpy.asarray(arr)> #displaying arr1 before the changes made> print>(>'arr1: '> , arr1)> #change made in arr1> arr1[>3>]>=> 23> #displaying arr1 , arr , list after the change has been made> print>(>'lst: '> , lst)> print>(>'arr: '> , arr)> print>(>'arr1: '> , arr1)>

>

>

Ieșire:

List: [1, 7, 0, 6, 2, 5, 6] arr: [1 7 0 6 2 5 6] arr1: [1 7 0 6 2 5 6] lst: [1, 7, 0, 6, 2, 5, 6] arr: [ 1 7 0 23 2 5 6] arr1: [ 1 7 0 23 2 5 6]>

În arr și arr1 modificarea este vizibilă la indicele 3, dar nu în 1st.