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

是否可以从一个 Python 列表构造一个 NumPy 数组?

289885 次浏览

是的:

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

你是说像这样的东西?

from numpy  import array
a = array( your_list )

首先,我建议您浏览 NumPy 的 快速入门教程,它可能有助于解决这些基本问题。

您可以直接从列表中创建数组,如下所示:

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

或者以同样的方式从嵌套列表中获取:

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

你想把它保存成文件吗?

import numpy as np


myList = [1, 2, 3]


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

然后读:

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

我想,你是说把一个列表转换成一个数字数组? 然后,

import numpy as np


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

给出一个列表 b 的数组,其形状以重塑形式给出。

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

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

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

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)

希望这个能帮上忙!

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 库中指定的 array 方法将列表转换为 numpy 数组。

t=np.array(t)

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

也许:

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

产出:

<class 'numpy.ndarray'>