引文
标准的python中用list保存数值,可以当数组使用。但由于列表的元素是任意对象,因此列表中保存的是对象的指针。对于数值运算来说,这种结构显然会浪费内存和CPU计算时间。
此外,python还提供了array模块,但由于其不支持多维数组,因此也不适合数值计算。
So,Numpy正好弥补了这些不足,Numpy提供了两个基本的对象:ndarray和ufunc。ndarray是存储单一数据类型的多维数组,而ufunc是能够对数组进行处理的函数。
导入方法
import numpy as np
list转array:采用的是numpy自带的array转换方法
>>>list=[1,2]
>>>_array = np.array(lists)
array转list: nunpy的array转list同样非常方便,直接使用tolist()方法即可
>>>_list = _array.tolist()
使用numpy的random.shuffle方法对给定的一组有序序列生转换成一个随机序列
>>>arr = np.arange(1000) #生成一个序列,from 0 to 999
>>>np.random.shuffle(arr)
将numpy的数组格式数据以文本格式保存
>>>np.savetxt("a.txt",a,fmt="%d",delimiter=‘\t‘)
将python列表转为numpy格式:
>>>pyList = [5, 11, 122]
>>>mat(pyList)
一个例子:
>>> from numpy import *
>>> a = arange(15).reshape(3, 5)
>>> a
array([[ 0, 1, 2, 3, 4],
[ 5, 6, 7, 8, 9],
[10, 11, 12, 13, 14]])
>>> a.shape
(3, 5)
>>> a.ndim
2
>>> a.dtype.name
‘int32‘
>>> a.itemsize
4
>>> a.size
15
>>> type(a)
numpy.ndarray
>>> b = array([6, 7, 8])
>>> b
array([6, 7, 8])
>>> type(b)
numpy.ndarray
数组创建
>>> from numpy import *
>>> a = array( [2,3,4] )
>>> a
array([2, 3, 4])
>>> a.dtype
dtype(‘int32‘)
>>> b = array([1.2, 3.5, 5.1])
>>> b.dtype
dtype(‘float64‘)
比较两种创建方式,其中第一种是错误的
>>> a = array(1,2,3,4) # WRONG
>>> a = array([1,2,3,4]) # RIGHT
二维数组创建
>>> b = array( [ (1.5,2,3), (4,5,6) ] )
>>> b
array([[ 1.5, 2. , 3. ],
[ 4. , 5. , 6. ]])
版权声明:本文为博主原创文章,未经博主允许不得转载。
原文地址:http://blog.csdn.net/dream_angel_z/article/details/46987963