一篇博客入门Numpy模块

一篇博客入门Numpy模块

(Numerical python)高性能科学计算和数据分析的基础包。

功能:
  • ndarray,一个具有矢量算术运算和复杂广播能力的快速且节省空间的多维数组。
  • 用于对数组数据进行快速运算的标准数学函数(无须循环)
  • 线性代数,随机数生成以及傅里叶变换功能
  • 用于读写磁盘数据的工具以及用于操作内存映射文件的工具
本质上,Numpy期望用户以使用“标量”的方式操作“向量”

即:操作一个矩阵向操作一个向量一样轻松。

import numpy as np
a = np.array([1,2,3,4])
b = np.array([10,20,30,40])
c = a+b
print(c)

ndarray数组

创建

  • import numpy as np
    a = [1,2,3,4]
    b = np.array(a)
    
  • array_one = np.ones([10,10])
    

    创建10行10列的数据为浮点1的矩阵,同理还有zeros()

  • np.arange(1,10,2)
    

    array([0,2,4,6,8]),从元素0开始依次递增2!!!10是娶不到的

随机数

  • 设置随机种子
    • np.random.seed(10)
  • 均匀分布
    • np.random.rand(10,10) 创建指定形状的数组(范围在0,1之间)
    • np.random.uniform(0,100) 创建指定范围内的一个
    • np.random.randint(0,100) 创建指定范围内的一个整数
  • 正态分布
    • np.random.normal(1.75,0.1,(2,3)) 给定均值/标准差/维度 的正态分布
    • np.random.randn(10,10) 指定形状的标准正态分布

随机数的相关操作

打乱shuffle
array([[1,2],[3,4]
	,[5,6],[7,8]])
np.random.shuffle(a)

二维数组,只有行的顺序被打乱了,列的顺序不变

查看数组属性

用法 说明
b.size 数组元素的个数(shape里面每一个分量的乘积)
b.shape 数组形状
b.ndim 数组维度
b.dtype 数组元素类型

切片和索引

20200614165132841

attention:

arr[5:8] = 12

在list中会报错,3个元素应该被赋三个值,但是在ndarray中可以将所有元素赋一个值

三维数组的切片索引

20200614165359617
在这里插入图片描述

变形之前的元素个数和变形之后的元素个数应该保持一直。6*4 == 24

切片分成多个数组

在这里插入图片描述

数组&标量之间的运算

数组&数组---------------加减乘除------------对每个位置分别操作

20200614170437170

数学和统计方法

在这里插入图片描述

这是对全局进行操作,however有些人希望针对行或者针对列进行某些操作。

指定计算范围的统计方法—axis

在这里插入图片描述

基本的数学和统计学的方法

在这里插入图片描述

线性代数

矩阵相乘
x.dot(y)  #相当于np.dot(x,y)

20200617154553239

其他函数

在这里插入图片描述

猜你喜欢

转载自blog.csdn.net/un_lock/article/details/106836514