如何在python中将列表保存为numpy数组?

ulydmbyx  于 2022-12-23  发布在  Python
关注(0)|答案(9)|浏览(178)

可以从python列表构造NumPy数组吗?

dba5bblo

dba5bblo1#

首先,我建议您浏览NumPy的Quickstart tutorial,它可能有助于解决这些基本问题。
您可以直接从列表创建数组,如下所示:

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

或以相同的方式从嵌套列表中的:

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

7gcisfzg2#

你是说像这样的东西吗?

from numpy  import array
a = array( your_list )
9w11ddsr

9w11ddsr3#

是的,它是:

a = numpy.array([1,2,3])
mctunoxg

mctunoxg4#

你想把它保存为文件吗?

import numpy as np

myList = [1, 2, 3]

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

......然后阅读:

myArray = np.load(open('array.npy', 'rb'))
ve7v8dk2

ve7v8dk25#

例如,可以使用numpy.asarray将列表转换为数组:

>>> a = [1, 2]
>>> np.asarray(a)
array([1, 2])
t1rydlwq

t1rydlwq6#

我想,你是说把一个列表转换成一个numpy数组?那么,

import numpy as np

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

给你一个a作为列表B的一个数组,其形状在reshape中给出。

zvokhttg

zvokhttg7#

下面是一个更完整的示例:

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)

希望这有帮助!!

dba5bblo

dba5bblo8#

import numpy as np 

... ## other code

一些列表理解

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

使用numpy库中指定的数组方法将列表转换为numpy数组。

t=np.array(t)

这可能会有所帮助:https://numpy.org/devdocs/user/basics.creation.html

oo7oh9g9

oo7oh9g99#

也许:

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

输出:

<class 'numpy.ndarray'>

相关问题