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

Posted

技术标签:

【中文标题】如何在python中将列表保存为numpy数组?【英文标题】:How to save a list as numpy array in python? 【发布时间】:2011-08-22 12:13:16 【问题描述】:

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

【问题讨论】:

【参考方案1】:

首先,我建议您阅读 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]] )

【讨论】:

将 numpy 导入为 np;并添加 np. before array(np.array([]); 对于可能会感到困惑的人 我会稍微改变一下那个语法。 import numpy as np 然后a = np.array ( [[2,3,4],[3,4,5]] ) 怎么样?【参考方案2】:

也许:

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

输出:

<class 'numpy.ndarray'>

【讨论】:

【参考方案3】:
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

【讨论】:

【参考方案4】:

这是一个更完整的例子:

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)

希望这会有所帮助!

【讨论】:

【参考方案5】:

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

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

【讨论】:

【参考方案6】:

我想,您的意思是将列表转换为 numpy 数组? 那么,

import numpy as np

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

以 reshape 中给出的形状将 a 作为列表 b 的数组提供给您。

【讨论】:

【参考方案7】:

您要将其保存为文件吗?

import numpy as np

myList = [1, 2, 3]

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

...然后阅读:

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

【讨论】:

【参考方案8】:

你的意思是这样的?

from numpy  import array
a = array( your_list )

【讨论】:

【参考方案9】:

Yes it is:

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

【讨论】:

以上是关于如何在python中将列表保存为numpy数组?的主要内容,如果未能解决你的问题,请参考以下文章

在 Numpy Python 中将一维数组附加到二维数组

Python - 如何创建一个空的numpy数组并附加到它,如列表[重复]

如何使用 matplotlib/numpy 将数组保存为灰度图像?

从使用 numpy.save(...) 保存的文件中将 numpy 数组加载到 C 中

Python + alglib + NumPy:如何避免将数组转换为列表?

在 Python 3 中将逗号分隔的字符串转换为 Numpy 数组