IT数码 购物 网址 头条 软件 日历 阅读 图书馆
TxT小说阅读器
↓语音阅读,小说下载,古典文学↓
图片批量下载器
↓批量下载图片,美女图库↓
图片自动播放器
↓图片自动播放器↓
一键清除垃圾
↓轻轻一点,清除系统垃圾↓
开发: C++知识库 Java知识库 JavaScript Python PHP知识库 人工智能 区块链 大数据 移动开发 嵌入式 开发工具 数据结构与算法 开发测试 游戏开发 网络协议 系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程
数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁
 
   -> Python知识库 -> NumPy学习笔记(五)—— choice()函数 -> 正文阅读

[Python知识库]NumPy学习笔记(五)—— choice()函数

一、前言

今天在写神经网络里,使用minibatch抽取部分数据使用到了choice函数

二、函数讲解

1、choice()函数

老样子,先给大家上张官网的介绍

英文版:
在这里插入图片描述

中文版:

choice(a, size=None, replace=True, p=None)

从给定的1维数组中生成随机样本

2、参数讲解

1) a

类型:一维数组或int整数

① 如果是数组的话

则从a的元素中生成随机的样本

import numpy as np

a = [1,5,3,0,2,6,9,8]

print(np.random.choice(a))

# 2		# 没有size参数,默认随机返回一个值

② 如果是int类型的话

用法和mp.arange(n)相同

import numpy as np

print(np.random.choice(5,3))
# [0 3 4]	# 等同于np.arange((0,5),3),均匀随机样本(可能存在重复)

2)size(可选)

类型:int(例如1,2,3)或int型的元组(例如:(1,2,3) )

作用:影响返回值的形状

① 如果不填

默认返回一个随机样本

import numpy as np

a = [1,5,3,0,2,6,9,8]

print(np.random.choice(a))
# 2

② 如果填写(m,n,k)

返回m * n * k个样本(这里可以理解为(块,行,列),类似于我这篇文章里的permute函数)

import numpy as np

print(np.random.choice(a,size=(1,2)))
# [[2 3]]	#1块1行2列

print(np.random.choice(a,size=(1,2,3)))
# [[[2 9 3]		# 1块2行3列
#   [6 5 3]]]

3)replace(可选)

类型:布尔类型(True/False)

作用:影响输出值是否存在重复情况

① 如果是True

输出值可能重复

print(np.random.choice(5,3,replace=True))
# [2 0 0]	# 输出值可能重复


② 如果是Fasle

print(np.random.choice(5,3,replace=False))
# [1 4 0]	# 输出值不会重复

4)p(可选,全称:probability)

类型:一维数组(同a)

作用:与 a 中的每个条目相关联的概率,默认为均匀分布

print(np.random.choice(5, 3, replace=False, p=[0.1, 0, 0.3, 0.6, 0]))
# [3 0 2]

5)返回值

类型:与size参数设定有关系,默认为一维的int或者数组

3、出错时可能的情况

  • a 是 int 且小于零
  • a 或 p 不是一维的
  • a 是size= 0 的数组
  • p 不是概率向量
  • a 和 p 具有不同的长度
  • replace=False 时并且样本数量大于总体

扩展

a除了一维数组和int整数类型

也可以吧一维数组中的数字替换成字符串

a = ['pooh', 'rabbit', 'piglet', 'Christopher']
print(np.random.choice(a, 3, p=[0.5, 0.1, 0.1, 0.3]))
# ['Christopher' 'Christopher' 'rabbit']
  Python知识库 最新文章
Python中String模块
【Python】 14-CVS文件操作
python的panda库读写文件
使用Nordic的nrf52840实现蓝牙DFU过程
【Python学习记录】numpy数组用法整理
Python学习笔记
python字符串和列表
python如何从txt文件中解析出有效的数据
Python编程从入门到实践自学/3.1-3.2
python变量
上一篇文章      下一篇文章      查看所有文章
加:2022-05-27 17:17:41  更:2022-05-27 17:19:13 
 
开发: C++知识库 Java知识库 JavaScript Python PHP知识库 人工智能 区块链 大数据 移动开发 嵌入式 开发工具 数据结构与算法 开发测试 游戏开发 网络协议 系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程
数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁

360图书馆 购物 三丰科技 阅读网 日历 万年历 2024年11日历 -2024/11/15 15:00:50-

图片自动播放器
↓图片自动播放器↓
TxT小说阅读器
↓语音阅读,小说下载,古典文学↓
一键清除垃圾
↓轻轻一点,清除系统垃圾↓
图片批量下载器
↓批量下载图片,美女图库↓
  网站联系: qq:121756557 email:121756557@qq.com  IT数码