Como salvar uma lista como matriz numpy em python?

128

Eu preciso saber se é possível salvar uma lista python como uma matriz numPy.

Hossein
fonte

Respostas:

162

Se você olhar aqui, pode dizer o que você precisa saber.

http://www.scipy.org/Tentative_NumPy_Tutorial#head-d3f8e5fe9b903f3c3b2a5c0dfceb60d71602cf93

Basicamente, você pode criar uma matriz a partir de uma sequência.

import numpy as np
a = np.array( [2,3,4] )

Ou a partir de uma sequência de sequências.

import numpy as np
a = np.array( [[2,3,4], [3,4,5]] )
Bryce Siedschlaw
fonte
21
importar numpy como np; e adicione np. antes array (np.array ([]); para alguém que pode ser confundido
Abhi
3
Eu teria colocado essa sintaxe um pouco diferente. Que tal import numpy as npentão a = np.array ( [[2,3,4],[3,4,5]] ) ?
SDsolar
39

você quer dizer algo assim?

from numpy  import array
a = array( your_list )
Cédric Julien
fonte
16

Deseja salvá-lo como um arquivo?

import numpy as np

myList = [1, 2, 3]

np.array(myList).dump(open('array.npy', 'wb'))

... e depois leia:

myArray = np.load(open('array.npy', 'rb'))
eumiro
fonte
8

Você pode usar numpy.asarray , por exemplo, para converter uma lista em uma matriz:

>>> a = [1, 2]
>>> np.asarray(a)
array([1, 2])
Bilal
fonte
4

Suponho que você queira converter uma lista em uma matriz numpy? Então,

import numpy as np

# b is some list, then ...    
a = np.array(b).reshape(lengthDim0, lengthDim1);

fornece a como uma matriz da lista b na forma fornecida na remodelagem.

Hadamard
fonte
0

Aqui está um exemplo mais completo:

import csv
import numpy as np

with open('filename','rb') as csvfile:
     cdl = list( csv.reader(csvfile,delimiter='\t'))
     print "Number of records = " + str(len(cdl))

#then later

npcdl = np.array(cdl)

Espero que isto ajude!!

SDsolar
fonte
0
import numpy as np 

... ## other code

alguma compreensão da lista

t=[nodel[ nodenext[i][j] ] for j in idx]
            #for each link, find the node lables 
            #t is the list of node labels 

Converta a lista em uma matriz numpy usando o método de matriz especificado na biblioteca numpy.

t=np.array(t)

Isso pode ser útil: https://numpy.org/devdocs/user/basics.creation.html

ThermoRestart
fonte
0

talvez:

import numpy as np
a=[[1,1],[2,2]]
b=np.asarray(a)
print(type(b))

resultado:

<class 'numpy.ndarray'>
Raazescythe
fonte