Python基础——Numpy库超详细介绍+实例分析+附代码

1、NumPy简介

NumPy是高性能科学计算和数据分析的基础包,计算速度要比python自带的函数快很多,非常好用。一般不需要安装,装Python就自动装了,如果需要:

pip3 install numpy

然后导出

import numpy as np

2、常用方法

2.1最常用的

在这里插入图片描述

2.2更多

array.shape
& array的规格
array.ndim
数据的维数
array.dtype
&array的数据规格
numpy.zeros(dim1,dim2)
&创建dim1dim2的零矩阵
numpy.arange(start, stop, step, dtype = None)
返回一维的数组
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行摘取出来,组成新数组
numpy.reshape(a,b)
将ab的一维数组排列为ab的形式
array([a,b,c,d],[d,e,f,g])
返回一维数组,分别为[a,d],[b,e],[c,f],[d,g]
array.T
&array的转置
numpy.random.randn(a,b)
& 生成a*b的随机数组
numpy.dot(matrix_1,matrix_2)
&矩阵乘法
array.transpose( (1,0,2,etc.) )
& 对于高维数组,转置需要一个由轴编号组成的元组

3、ndarray创建以及数据类型

3.1 ndarray创建

array()
将列表转换为数组,可选择显式指定dtype

arange()
range的numpy版,支持浮点数
linspace()
类似arange(),第三个参数为数组长度
zeros()
根据指定形状和dtype创建全0数组
ones()
根据指定形状和dtype创建全1数组

**empty()**         
根据指定形状和dtype创建空数组(随机值)
**eye()**          
 根据指定边长和dtype创建单位矩阵

3.2 数据类型

ndarray数据类型:dtype:
布尔型:bool_
整型:int_ int8 int16 int32 int64
无符号整型:uint8 uint16 uint32 uint64
浮点型:float_ float16 float32 float64
复数型:complex_ complex64 complex128

4、Numpy索引和切片

4.1普通索引

1 数组和标量之间的运算:
可以直接进行加减乘除的运算(对每一个元素进行) a+1 a*3 1//a a0.5
2 同样大小数组之间的运算:
a+b a/b a
b
3 数组的索引:
一维数组:a[5]
多维数组:a[2][3]或a[2,3]
4 数组的切片:
一维数组:a[3:6],a[:5]
多维数组:a[3:6,1:7],a[:,1:7]
注意:与列表不同,数组切片时并不会自动复制,在切片数组上的修改会影响原数组。
【解决方法:copy()】

4.2 布尔索引

1 给一个数组,选出数组中所有大于5的数?
a[a>5]

2 给一个数组,选出数组中所有大于5的偶数?
a[(a>5)&(a%2==0)]

3 给一个数组,选出数组中所有大于5的数和偶数
a[(a>5)|(a%2==0)]

4.3 花式索引

1 对于一个数组,选出其第1,3,4,6,7个元素,组成新的二维数组?
答案:a[[1,3,4,6,7]]

2:对一个二维数组,选出其第一列和第三列,组成新的二维数组?
答案:a[:,[1,3]]

5、NumPy:通用函数以及缺失值表示

5.1一元函数

numpy.sqrt(array)
平方根函数

numpy.exp(array)
e^array[i]的数组

numpy.abs/fabs(array)
计算绝对值

numpy.square(array)
计算各元素的平方 等于array**2</

  • 8
    点赞
  • 64
    收藏
    觉得还不错? 一键收藏
  • 4
    评论
评论 4
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值