通过本次学习你可以掌握Numpy

Numpy介绍(获取地址更多Numpy函数

numpy的主要对象是同质多维数组。也就是在一个元素(通常是数字)表中,元素的类型都是相同的。

numpy的数组类被成为ndarray。别名为array。numpy.array与标准python库类array.array不一样,标准库类中的那个只能处理一维数组并且功能更少。

例如ndarray为矩阵

关于维数和类型操作:
ndarray.ndim                 数组的轴(维度)的数量。
ndarray.shape:           数组的维度。
ndarray.size:              数组的元素的总个数。(m*n)
ndarray.dtype:           用来描述数组中元素类型的对象。

例子:

 import numpy as np

 A = np.array([1,3,1])
B = np.array([[1],[2],[3]])
C = np.array([1,3,1],dtype= "float64")
print("""
数组A的维度数为%s
数组A的维度为%s
数组A的元素总个数为%s
""" %(A.ndim ,B.shape ,A.size))
print("""
数组A的类型%s
数组C的类型%s
""" %(A.dtype ,C.dtype ))

 结果:

Python中的Numpy包-LMLPHP

关于生成特殊矩阵操作:

zeros()            元素全部为0

ones()             元素全为1

arange(起始,结束,步长)

linspace(起始,结束,元素个数)

为了生成数字序列。numpy提供一个类似于arange的函数,返回一个列表,参数为(起始,结束,步长)
函数linspace是一个更好的选择,因为我们可以对该函数指定需要创建多少个元素,参数为(起始,结束,元素个数)

例子:

__author__ = "WSX"

import numpy as np

A = np.zeros((3,3))
B = np.ones((3,3))
C = np.arange(1.0,5,2.1)
D = np.linspace(1,5,4)
print("""
生成的A为:\n%s
生成的B为:\n%s
生成的C为:\n%s
生成的D为:\n%s
""" %(A,B,C,D))

 结果:

Python中的Numpy包-LMLPHP

 关于reshape的使用:

A= np.array([1,2,3,4,5,6,7,8,9])
B= np.array([1,2,3,4,5,6,7,8,9,10,11,12])
print("A(3,3)\n", A.reshape(3,3)) #二维矩阵
print("B(1,9)\n",A.reshape(1,9)) #二维矩阵
print("B(2,2,3)\n",B.reshape(2,2,3)) #三维矩阵

结果:

Python中的Numpy包-LMLPHP

关于矩阵的运算:

  在数组上的算术操作符是逐元素的得到的是一个重新创建的数组,然后将结果写入新数组中:

  numpy中乘积操作符×是逐元素进行的

  矩阵的积可以通过使用dot 函数

(待续。。。)

05-15 07:21