吾爱破解 - 52pojie.cn

 找回密码
 注册[Register]

QQ登录

只需一步,快速开始

查看: 1655|回复: 3
收起左侧

[Python 转载] 【笔记】python数据分析——numpy随机数函数

[复制链接]
qianshang666 发表于 2021-3-8 17:45

往期数据分析笔记

【笔记】python数据分析——numpy初识1
【笔记】python数据分析——numpy初识2
【笔记】python数据分析——变换与编程中的轴

numpy中的随机数函数

开始之前我们先导入numpy包

import numpy as np

1.均匀分布

  • rand(均匀分布,在相同长度的间隔的分布概率是等可能的)
    print(np.random.rand(2,3))

    运行结果:
    [[0.88481365 0.75807592 0.42977876]
    [0.35479717 0.38166081 0.93096647]]
    这个函数就是返回一个0-1之间等可能的随机数

  • randint(给定范围随机整数,这个函数有三个参数,第一个是给定返回的最小值,第二个是给定范围的最大值,第三个是形状)
    print(np.random.randint(1,10,(2,3)))

    运行结果:
    [[2 4 2]
    [9 1 4]]
    上面代码的意思是:创建了1-10范围之间的两行三列的整数

  • randn(正态分布,正态曲线呈钟型,两头低,中间高,左右对称因其曲线呈钟形,因此人们又经常称之为钟形曲线)
    print(np.random.randn(2,3))

    运行结果:
    [[ 1.53115857  0.14403774 -0.39024395]
    [ 0.18455718 -1.82529426 -0.16417137]]
    正态分布=高斯分布(两头低,中间高,围绕中间高的那个数字)

  • seed(随机数种子,如果你固定了随机数种子,你使用以上的随机数创建函数,值就会固定)
    np.random.seed(2)
    print(np.random.rand(2,3))
    print(np.random.randint(1,10,(2,3)))
    print(np.random.randn(2,3))

    运行结果:
    [[0.4359949  0.02592623 0.54966248]
    [0.43532239 0.4203678  0.33033482]]
    [[6 5 5]
    [6 8 4]]
    [[ 2.6460672  -0.04386375 -0.96561968]
    [ 0.87866389 -2.24587483  1.11957525]]
    如果你不希望固定随机数的话可以把第一行代码删除

乱序排列

  • permutation(乱序,不改变原数组)
    arr1 = np.arange(1,10)
    print(arr1)
    arr2 = np.random.permutation(arr1)
    print(arr2)

    运行结果:
    [1 2 3 4 5 6 7 8 9]
    [8 7 3 2 9 5 1 6 4]

  • shuffle(乱序,直接改变原数组)
    arr1 = np.arange(1,10)
    print(arr1)
    np.random.shuffle(arr1)
    print(arr1)

    运行结果:
    [1 2 3 4 5 6 7 8 9]
    [1 4 2 6 8 3 9 7 5]

给定参数的随机数

  • uniform(给定参数均匀分布)
    print(np.random.uniform(1,10,(2,3)))

    运行结果:
    [[2.5104098  4.30724232 5.21806226]
    [6.88839564 8.13780769 6.96755614]]
    给定1-10范围,两行三列的值,数字出现的概率相等

  • normal(给定参数正态分布)
    print(np.random.normal(0,1,(2,3)))

    运行结果:
    [[ 0.0319746   1.18246826 -1.12076831]
    [-0.85800742 -0.52715869  1.11385518]]
    0是均值(加起来的和为0),1是标准差(最大值和最小值相差1)

  • poisson(给定参数泊松分布)
    print(np.random.poisson(0,(2,3)))
    print(np.random.poisson(2,(2,3)))

    运行结果:
    [[0 0 0]
    [0 0 0]]
    [[1 5 5]
    [4 5 3]]
    2是发生概率(0代表没发生,非0数即为发生),两行三列

今日鸡汤

当你下定决定做一件事,那就去尽力做,即便这件事最后没有达到你的预期回报,但你还是得认真、努力去完成,在这过程中,你会逐渐认识到自己的不足,认清自己真正想要什么。给自己一个期限,不用告诉所有人,不要犹豫,直到你真的尽力为止。

免费评分

参与人数 1吾爱币 +1 热心值 +1 收起 理由
Va1 + 1 + 1 我很赞同!

查看全部评分

发帖前要善用论坛搜索功能,那里可能会有你要找的答案或者已经有人发布过相同内容了,请勿重复发帖。

氓之嗤嗤 发表于 2021-3-8 18:04
LZ你看的哪本书呐?
 楼主| qianshang666 发表于 2021-3-8 18:13
 楼主| qianshang666 发表于 2021-3-8 18:14
您需要登录后才可以回帖 登录 | 注册[Register]

本版积分规则

返回列表

RSS订阅|小黑屋|处罚记录|联系我们|吾爱破解 - LCG - LSG ( 京ICP备16042023号 | 京公网安备 11010502030087号 )

GMT+8, 2024-11-25 03:57

Powered by Discuz!

Copyright © 2001-2020, Tencent Cloud.

快速回复 返回顶部 返回列表