numpy的随机抽样
文章目录
- 前言
- 使用numpy.random.seed()
- 离散型随机变量
- numpy如何实现对离散随机变量的抽样
- 其它随机函数
- 总结
前言
本文简单介绍NumPy如何产生符合某种特定分布随机变量的样本
使用numpy.random.seed()
numpy.random.seed(seed=None)
Seed the generator 其使用目的是给随机数产生器提供一个seed,使随机的结果可以重复产生,但是这个方法是全局的即意味会影响整个numpy,目前推荐使用RandomState
这个类来产生单个的实例。
离散型随机变量
numpy如何实现对离散随机变量的抽样
- 用
scipy.stats
来产生离散型的随机变量,可以非常方便的获得其统计值例如mean和variance, 还可以求得PMF,PPF, CDF
代码如下(示例):
# Initialize the random variable
import scipy.stats as st
X = st.bernoulli(0.25)
# array([0, 0, 1, 0, 0, 0, 0, 0, 0, 0, 1, 0, 0, 1, 0, 1, 0, 1, 0, 1])
# You can also compute the mean and variance of a random variable:
X.mean(), X.var()
# (0.25, 0.1.75)
- 可以用
scipy.stats
产生的离散变量实例 或numpy.random
产生多个随机变量的实例(俗称抽样)
代码如下(示例)以正态分布为例可以看到结果是一样的。
# Import norm, matplotlib.pyplot, and seaborn
import scipy.stats as st
import matplotlib.pyplot as plt
import seaborn as sns# use random variable from scipy.stats
X = st.norm(loc=0.5, scale=2.)
sample1 = X.rvs(size=1000, random_state=11)# or use numpy.random or numpy.RandomState
# so same seed could be applied
rng = np.random.RandomState(11)
sample2 = rng.randn(1000)fg, ax = plt.subplots(nrows=1, ncols=2, figsize=(15,6))
x = np.linspace(-6, 6, 100)ax[0].hist(sample1, bins=30, density=True)
ax[0].plot(x, X.pdf(x), lw=4)ax[1].hist(sample2, bins=30, density=True)
- 方法适用于其他离散分布
其它随机函数
numpy.random.choice(a, size=None, replace=True, p=None)
Generates a random sample from a given 1-D array. 注意replace=True
是缺省选项,并且在深度学习的样本不足情况下非常有用。numpy.random.shuffle(x)
Modify a sequence in-place by shuffling its contents. 所以需要 先对数据集进行洗牌操作numpy.random.permutation(x)
Randomly permute a sequence, or return a permuted range. 类似以上的操作。
总结
本文仅仅简单介绍了numpy.random
的一些随机变量的抽样操作。
numpy的随机抽样相关推荐
- Numpy的随机抽样学习
Numpy的随机抽样学习 什么是Numpy: NumPy是python数据科学计算的核心库,提供了高性能的多位数组对象及处理数组的工具. 使用以下语句导入Numpy库: import numpy as ...
- Numpy:随机抽样
随机抽样 numpy.random 模块对 Python 内置的 random 进行了补充,增加了一些用于高效生成多种概率分布的样本值的函数,如正态分布.泊松分布等. numpy.random.see ...
- numpy下 随机抽样
随机抽样 离散型随机变量 二项分布 泊松分布 超几何分布 连续型随机变量 均匀分布 正态分布 指数分布 其他随机函数 随机从序列中获取元素 对数据集进行洗牌操作 numpy.random模块可以用来生 ...
- [转载] python的numpy.random详细解析
参考链接: Python中的numpy.float_power 随机抽样 (numpy.random) 简单的随机数据 rand(d0, d1, -, dn) 随机值 >>> np ...
- Python~NumPy模块一站式教程,稳稳拿捏(持续更新ing)
一.Numpy模块 基础 1. 介绍 NumPy的核心是多维数组类numpy.ndarray,矩阵类numpy.matrix是多位数组类的派生类.以多位数组类为数据组织结构,Numpy提供了众多的数学 ...
- Python的random内置模块产生的随机数真的随机吗?
先说结论:不止Python的random内置模块,还包括numpy的随机抽样子模块random,以及其他编程语言的随机数生成器,例如java.Math.Random()函数,所有这些随机数生成器生成的 ...
- Numpy入门教程:07. 随机抽样
背景 什么是 NumPy 呢? NumPy 这个词来源于两个单词 – Numerical和Python.其是一个功能强大的 Python 库,可以帮助程序员轻松地进行数值计算,通常应用于以下场景: 执 ...
- 【Task02】Numpy组队学习—随机抽样
[Task02]Numpy组队学习-随机抽样 文章目录 [Task02]Numpy组队学习-随机抽样 随机抽样 离散型随机变量 泊松分布 超几何分布 连续型随机变量 均匀分布 正态分布 指数分布 其他 ...
- python之Numpy随机抽样
随机抽样 前言 一.随机模块 二.离散型随机变量 二项分布 计算期望和方差 泊松分布 超几何分布 三.连续型随机变量 均匀分布 四.正态分布 五.指数分布 其他随机函数 前言 numpy.random ...
- python随机抽样numpy_随机抽样 (`numpy.random`) | NumPy 中文
# 随机抽样 (numpy.random) Numpy的随机数例程使用 BitGenerator 和 Generator 的组合来生成伪随机数以创建序列,并使用这些序列从不同的统计分布中进行采样: B ...
最新文章
- java构造方法的书写和注意事项(入门可看)
- centos make 升级_CentOS更改yum源与更新系统
- 高性能网站建设的14个原则
- 大四上学期的分数和分析感悟
- java 状态机_基于 RAFT 一致性算法的 Java 实现 SOFAJRaft
- 农行基于TFS工具的敏捷转型实践
- SQL Server 2005之PIVOT/UNPIVOT行列转换(转)
- LeetCode 76. 最小覆盖子串(滑动窗口)
- ERROR Request failed with status code 404 :at createError (node_modules\axios\lib\core\createError.
- Python+Django+SAE系列教程6-----本地配置Django
- 硬纪元AI峰会前瞻:线下大数据驱动下的新零售,目标是精准营销
- 123 Python程序中的线程操作-协程
- Linux下Python的安装以及注意事项
- Rust: 用于量化研究的尝试探讨
- windows驱动开发 DDK/WDK/WDM/WDF区别
- 输出数组元素(c语言)
- SQL中使用UNION ALL一定比OR效率高吗?
- 一个U盘安装多个iso引导
- 流程图各个形状代表的含义
- 软件项目开发与管理(赢得值分析参考例题)