学习进度(15)

学习numpy的用法

  NumPy(Numerical Python) 是 Python 语言的一个扩展程序库,支持大量的维度数组与矩阵运算,此外也针对数组运算提供大量的数学函数库。

NumPy 的前身 Numeric 最早是由 Jim Hugunin 与其它协作者共同开发,2005 年,Travis Oliphant 在 Numeric 中结合了另一个同性质的程序库 Numarray 的特色,并加入了其它扩展而开发了 NumPy。NumPy 为开放源代码并且由许多协作者共同维护开发。

NumPy 是一个运行速度非常快的数学库,主要用于数组计算,包含:

  • 一个强大的N维数组对象 ndarray
  • 广播功能函数
  • 整合 C/C++/Fortran 代码的工具
  • 线性代数、傅里叶变换、随机数生成等功能

  可用数据类型

 创建数组

>>> 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')

多维数组对象

array.shape                         array的规格
array.ndim      
array.dtype                         array的数据规格
numpy.zeros(dim1,dim2)              创建dim1*dim2的零矩阵
numpy.arange
numpy.eye(n) /numpy.identity(n)     创建n*n单位矩阵
numpy.array([…data…], dtype=float64 )
array.astype(numpy.float64)         更换矩阵的数据形式
array.astype(float)                 更换矩阵的数据形式
array * array                       矩阵点乘
array[a:b]                          切片
array.copy()                        得到ndarray的副本,而不是视图
array [a] [b]=array [ a, b ]        两者等价
name=np.array(['bob','joe','will']) res=name==’bob’ res= array([ True, False, False], dtype=bool)
data[True,False,…..]                索引,只索取为True的部分,去掉False部分
通过布尔型索引选取数组中的数据,将总是创建数据的副本。
data[ [4,3,0,6] ]                   索引,将第4,3,0,6行摘取出来,组成新数组
data[-1]=data[data.__len__()-1]
numpy.reshape(a,b)                  将a*b的一维数组排列为a*b的形式
array([a,b,c,d],[d,e,f,g])          返回一维数组,分别为[a,d],[b,e],[c,f],[d,g]
array[ [a,b,c,d] ][:,[e,f,g,h] ]=array[ numpy.ix_( [a,b,c,d],[e,f,g,h] ) ]
array.T                             array的转置
numpy.random.randn(a,b)             生成a*b的随机数组
numpy.dot(matrix_1,matrix_2)        矩阵乘法
array.transpose( (1,0,2,etc.) )     对于高维数组,转置需要一个由轴编号组成的元组
原文地址:https://www.cnblogs.com/ywqtro/p/14126413.html