Numpy随机数

Numpy随机数

np.random随机数子库

1: 基本函数

  • .rand(d0,d1,..dn):创建d0-dn维度的随机数数组,浮点数,范围从0-1,均匀分布
  • .randn(d0,d1,..dn):功能同上,区别:范围不定,标准正态分布
  • .randint(low,high,(shape)):根据shape创建随机整数或整数数组,范围是low,high,形状是shape
  • .seed(s):随机数种子,s是给定的种子值,通过设定相同的随机数种子,可以每次生成相同的随机数
import numpy as np

a = np.random.rand(3,4,5)
a

sn = np.random.randn(3,4,5)
sn

b = np.random.randint(100,200,(3,4,5))
b

np.random.seed(10)
np.random.randint(100,200,(3,4))
np.random.seed(10)
np.random.randint(100,200,(3,4)) #相同的种子,相同的随机数

2:高级函数

  • shuffle(a):将数组a的第0轴(最外维度)进行随机排列(洗牌),改变数组a
  • permutation(a):同上,区别是不改变数组a
  • .choice(a, size=None, replace=True, p=None):从一维数组a中以概率p抽取元素,形成size形状新数组,replace表示是否可以重用元素,默认为False,p为抽取概率
import numpy as np

np.random.seed(10)
a = np.random.randint(100,200,(3,4))
a

#数组最外一层维度数据发生变化
np.random.shuffle(a)
a

np.random.permutation(a)
a #变量不变

np.random.seed(10)
b = np.random.randint(100,200,(8,))
b

np.random.choice(b,(3,2)) #将一维数组内数据抽取转为3行2列数组
np.random.choice(b,(3,2),replace=False) #不重复抽取值
np.random.choice(b,(3,2),p=b/np.sum(b)) #p为抽取概率,本位置值越大,抽取概率越高

原文地址:https://www.cnblogs.com/yoyo1216/p/10131589.html

时间: 2024-10-10 10:27:53

Numpy随机数的相关文章

【机器学习】--Python机器学习库之Numpy

一.前述 NumPy(Numerical Python的缩写)是一个开源的Python科学计算库.使用NumPy,就可以很自然地使用数组和矩阵. NumPy包含很多实用的数学函数,涵盖线性代数运算.傅里叶变换和随机数生成等功能. 这个库的前身是1995年就开始开发的一个用于数组运算的库.经过了长时间的发展,基本上成了绝大部分Python科学计算的基础包,当然也包括所有提供Python接口的深度学习框架. 二.具体应用 1.背景--为什么使用Numpy? a) 便捷: 对于同样的数值计算任务,使用

Numpy模块

Numpy import numpy as np ar = np.array([1,2,3,4,5,6]) #一维数组就是1行 print(ar, type(ar), ar.dtype) 打印: [1 2 3 4 5 6] <class 'numpy.ndarray'> int32 ar = np.array([[1,2,3,4,5,6], [2,3,4,5,6,7]]) #二维数组就是1行1列 print(ar) 打印: [[1 2 3 4 5 6] [2 3 4 5 6 7]] ar =

numpy 模块和 pandas 模块

一.numpy模块 1.1 numpy 简介 numpy是python的一种开源的数值计算扩展库,这种库可用来存储和处理大型numpy数组. numpy库有两个作用: ? 1.区别于list列表,提供了数组操作.数组运算.以及统计分布和简单的数学模型 ? 2.计算速度快,甚至要优于python内置的简单运算,使得其成为pandas.sklearn等模块的依赖包.高级的框架如TensorFlow.PyTorch等,其数组操作也和numpy非常相似. 1.2 创建numpy数组 numpy数组即nu

numpy入门

numpy入门 一.numpy的定义 numpy实际上就是数组的运算,多维的数组对象,ndarray. 1,实际数据 2,元数据 描述信息 二.numpy的基本规范信息 1 # ndarray 2 # 规范,推荐,复用 3 import numpy as np 4 5 ar = np.array([1,2,3,4,5]) 6 print(ar) 7 print([1,2,3,4,5]) #打印列表 8 print(ar.ndim) #打印维度 9 print(ar.shape) #打印数组形状

《Python数据分析》笔记2&mdash;&mdash;统计学与线性代数

统计学与线性代数 用Numpy进行简单的描述性统计计算 import numpy as np from scipy.stats import scoreatpercentile data=np.loadtxt("mdrtb_2012.csv",delimiter=',',usecols=(1,),skiprows=1,uppack=True) #加载数据 print("Max method",data.max()) print("Max function&

学习Make your own neural network 记录(二)

通过前面的理论学习,以及关于Error和weight的关系分析,得出的公式,练习做一个自己的神经网络,通过Python3.5: 跟随书上的python introduction,介绍下numpy中的zeros(): import numpy a = numpy.zeros([3,2]) a[0,0] = 1 a[1,1] = 2 a[2,1] = 5 print(a) 结果是: [[1. 0.] [0. 2.] [0. 5.]] 可以用这个方法来生成矩阵. 接下来用python搭建神经网络的骨骼

ndarray数组自动创建

为了实现某些运算,需要快速构造符合要求的大数组 Numpy函数生成的数组,如不指定类类型,几乎全为浮点型(arange除外,它是整形),因为科学计算中测量值,例如温度.长度,都是浮点数 1 import numpy as np 2 import matplotlib.pyplot as plt 3 plt.style.use('seaborn') 1 np.arange(20) array([ 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 1

5.1_非监督学习之sckit-learn

非监督学习之k-means K-means通常被称为劳埃德算法,这在数据聚类中是最经典的,也是相对容易理解的模型.算法执行的过程分为4个阶段. 1.首先,随机设K个特征空间内的点作为初始的聚类中心. 2.然后,对于根据每个数据的特征向量,从K个聚类中心中寻找距离最近的一个,并且把该数据标记为这个聚类中心. 3.接着,在所有的数据都被标记过聚类中心之后,根据这些数据新分配的类簇,通过取分配给每个先前质心的所有样本的平均值来创建新的质心重,新对K个聚类中心做计算. 4.最后,计算旧和新质心之间的差异

基于numpy的随机数构造

class numpy.random.RandomState(seed=None) RandomState 是一个基于Mersenne Twister算法的伪随机数生成类 RandomState 包含很多生成 概率分布的伪随机数 的方法. 如果指定seed值,那么每次生成的随机数都是一样的.即对于某一个伪随机数发生器,只要该种子相同,产生的随机数序列就是相同的. numpy.random.RandomState.rand(d0, d1, ..., dn) Random values in a g