博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
numpy中的nan和常用方法
阅读量:236 次
发布时间:2019-03-01

本文共 1287 字,大约阅读时间需要 4 分钟。

1.数组的拼接

数组的竖直和水平拼接

#数据竖直拼接t3=np.vstack((t1,t2))#数据水平拼接t4=np.hstack((t1,t2))

例如:

import numpy as npt1=np.arange(12).reshape(2,6)t2=np.arange(12,24).reshape(2,6)print(t1)print(t2)print("*"*100)#数据竖直拼接t3=np.vstack((t1,t2))print(t3)print("*"*100)#数据水平拼接t4=np.hstack((t1,t2))print(t4)

结果如下

在这里插入图片描述

2.数组的行列交换

交换行

#交换1,2行t5[[1,2],:]=t5[[2,1],:]

交换列

#交换1,2行t5[:,[1,2]]=t5[:,[2,1]]

3.numpy的更多好用方法

  • 获取每行或每列的最大值位置
#获取t5每列最大值的位置np.argmax(t5,axis=0)#获取t5每行最大值的位置np.argmax(t5,axis=1)
  • 求每行或每列的总和
#获取t5每列和np.sum(t5,axis=0)#获取t5每行和np.sum(t5,axis=1)
  • 创建一个全为0的数组:
np.zeros((3,4))
  • 创建一个全为1的数组:
np.ones((3,4))
  • 创建一个单位矩阵
np.eye(3)

4.numpy生成随机数

random.rand():根据给定维度生成[0,1)之间的数据

random.randn():根据给定维度(不给维度时为单个数),产生符合标准正态分布的随机数

random.normal():产生可定义均值和标准差的正态分布随机数

random.randint():返回给定维度的随机整数

random.random()\random.sample:返回给定维度的[0,1)之间的随机数

random.choice():从给定的一维数组中生成随机数

random.seed():随机数种子 : 当设置相同的seed,每次生成的随机数相同,不设置seed,则每次会生成不同的随机数,数字一般可随意设置

numpy random官方参考文档:https://docs.scipy.org/doc/numpy/reference/routines.random.html

5.numpy中的nan(不是数)和inf(无穷大)

nan表示not a number,一般情况下,当我们读取本地文件为float类型,如果出现缺失,就会出现nan,如果我们做了一些计算如:0/0,2/0,无穷大加减等这类计算

nan比较常见 有以下特点

  • 两个nan是不相等的
np.nan==np.nan#结果是:False
  • 判断数组中nan的个数
np.count_nonzero(t!=t)#根据两个nan是不相等的条件 判断false的个数
  • 判断一个数字是否为nan
np.isnan(t)#返回值是:False true
  • nan和任何值计算都为nan

numpy的常用统计方法

在这里插入图片描述

转载地址:http://qcpv.baihongyu.com/

你可能感兴趣的文章