Numpy快速入门官方教程:
https://docs.scipy.org/doc/numpy-dev/user/quickstart.html
Numpy介绍
NumPy系统是Python的一种开源的数值计算扩展。这种工具可用来存储和处理大型矩阵,比Python自身的嵌套列表(nested list structure)结构要高效的多(该结构也可以用来表示矩阵(matrix))。据说NumPy将Python相当于变成一种免费的更强大的MatLab系统。
一个用python实现的科学计算包。包括:1、一个强大的N维数组对象Array;2、比较成熟的(广播)函数库;3、用于整合C/C++和Fortran代码的工具包;4、实用的线性代数、傅里叶变换和随机数生成函数。numpy和稀疏矩阵运算包scipy配合使用更加方便。
NumPy(Numeric Python)提供了许多高级的数值编程工具,如:矩阵数据类型、矢量处理,以及精密的运算库。专为进行严格的数字处理而产生。多为很多大型金融公司使用,以及核心的科学计算组织如:Lawrence Livermore,NASA用其处理一些本来使用C++,Fortran或Matlab等所做的任务。
基本操作
导入
import numpy as npy
基本的IO操作
从*.txt文件中读取,delimiter是分隔符,dtype导入类型为str
scores = npy.genfromtxt("1.txt",delimiter=",",dtype=str)
图示:
使用help查看函数使用说明
print(help(npy.sum)) #对矩阵求和:
ndarray
使用 npy 的 array 将 python 的 list 结构包装为numpy的 ndarray
vector = npy.array([5,10,15,20])
shape查看矩阵的形状
构造矩阵,然后shape下。
矩阵拿到某些元素
python中通过slice方式获取元素片,同样在numpy中也是可以的。
布尔类型访问矩阵
用布尔矩阵访问矩阵,挺有意思,测试矩阵中有没有等于25的,运算后得到一个和原来矩阵相同结构的布尔矩阵。
运算后有可以看到有两个元素等于25。
查看某一行是否有等于元素25的:
逻辑操作
包括与或非等。
元素类型转化
object.dtype查看object的类型;
object.astype(type)转化Object为type类型。
常用函数
求和操作
矩阵初始化操作1-reshape
reshape的算法(自己写的):
http://blog.csdn.net/daigualu/article/details/71275325
以下方法为查看矩阵的维度,元素类型和个数等。
矩阵初始化操作2
元素默认类型为float型:
指定类型为int32型:
序列化矩阵:
矩阵初始化随机模块
随机数组成的矩阵
平均分割100份的矩阵
对每个元素求sin
数学运算
加减元素,单个矩阵运算。
矩阵A和矩阵B的内积,必须满足A的列数等于B的行数
矩阵A和矩阵B的星乘,必须满足A和B的结构相同