【小白python数据分析入门2Numpy基础数组&random函数】

本文详细介绍了如何在Python的Numpy库中使用random函数生成随机数,包括随机浮点数、整数、以及对数组进行随机排列和洗牌的操作,还展示了JupyterNotebook作为课前准备工具的应用。
摘要由CSDN通过智能技术生成

目录

1.课前准备:

2.Numpy库怎么用?案例演示:

2.1 字符与数组

2.2 random函数

2.3.1 random函数是什么?

2.3.2 random函数运用:

2.3.3 random函数以上1-6随机函数的区别是什么:


1.课前准备:

(1)python可视化免费软件(官网:Project Jupyter | Home):

        Jupyter Notebook (anaconda)

(1)  会动的脑袋瓜子

2.Numpy库怎么用?案例演示:

2.1 字符与数组
arr1 = np.array((1, 3, 5, 7, 9))  
print("1.传入元组一个一维数组",arr1)
print("---------------------------------------------------------------")
arr2 = np.array([2, 4, 6, 8, 10])  
print("2.传入列表一个一维数组",arr2)
print("---------------------------------------------------------------")
arr3 = np.array([['a', 'b', 'c'], ['d', 'e', 'f']])  
print("3.传入一个嵌套列表创建一个二维字符数组\n",arr3)

2.2 random函数
2.3.1 random函数是什么?

random函数是用于生成伪随机数的内置模块,其主要作用包括生成随机数、打乱数据序列、生成随机字符串等

2.3.2 random函数运用:

(1)np.random.random()用于生成一个或一组服从[0,1)均匀分布的随机数的函数

print("利用random()创建的数组为: \n", np.random.random())
print("---------------------------------------------------------------")
print("利用random(2)创建的数组为: \n", np.random.random(2))
print("---------------------------------------------------------------")
print("利用random((2,5))创建的数组为: \n", np.random.random((2, 5)))

(2)np.random.rand ()是用于接收分开的参数来指定生成数组的形状,每个元素都是[0,1)间的随机数。

print("利用rand()创建的数组为: \n", np.random.rand())
print("---------------------------------------------------------------")
print("利用random(4)创建的数组为: \n", np.random.rand(4))
print("---------------------------------------------------------------")
print("利用random(4,3)创建的数组为: \n", np.random.rand(4, 3))

(3)np.random.randint ()是numpy库中用于生成一定范围内的随机整数的函数

random_numbers = np.random.randint(1, 6, size=(10,))
print("打印长度为10的一维数组,其中元素都是1到5之间的随机整数",random_numbers)
print("---------------------------------------------------------------")
print("指定范围生成一个指定范围及数组长宽的随机数组为:\n", np.random.randint(2, 5, size=(2, 3)))
print("---------------------------------------------------------------")
print("指定范围生成一个指定范围内的随机整数为:", np.random.randint(2, 5))

(4)np.random.randn()用于生成服从标准正态分布的随机数。这个函数可以返回一个或多个随机数,通常用于创建具有指定形状的多维数组。

L1 = np.random.randn(3,3)
L2 = np.random.randn(3,3)
L3 = np.random.randn(3,3)
L4 = np.random.randn(3,3)
print("L1:\n",L1)
print("L2:\n",L2)
print("L3:\n",L3)
print("L4:\n",L4)#输出L3和L4和上一个L1、L2不一样了

(5)np.random.shuffle()用随机乱序原数组。

L=np.arange(10)
print(L)
np.random.shuffle(L)
print(L)#注意这里输出已经改变

(6)np.random.permutation()是用于生成随机排列的函数。

np.random.permutation(L)

(7)np.arange()用于创建等差数列。

print(np.arange(5))  
print(np.arange(1, 10, 2))  

2.3.3 random函数以上1-6随机函数的区别是什么:

在NumPy库中,random(), rand(), randint(), randn(), permutation()shuffle这些函数都用于生成随机数或操作数组,但它们各自有着不同的特点和用途。具体如下:

  • np.random.rand(): 类似于一个装满了均匀小球的不透明袋子,无论你摸多少次,每个小球被摸到的概率都是相同的。它用于生成服从均匀分布的浮点数随机数,数值范围在[0,1)之间。
  • np.random.randn(): 就像从一个巨大的标准正态分布的海洋里捞起一滴水,这滴水的位置(数值)遵循着著名的钟形曲线(正态分布曲线)。它用于生成服从标准正态分布N(0,1)的浮点数随机数,可用于模拟和统计分析。
  • np.random.randint(): 想象你有一个透明的装满了不同颜色小球的袋子,每种颜色的小球代表一个整数。当你从中取出一个小球时,你会得到一个确定的整数。它用于生成指定范围内的随机整数,包含最小值,不包含最大值。
  • np.random.permutation(): 类似于把一副扑克牌彻底洗混,然后从中抽出一张,得到一个完全随机且不重复的结果序列。它用于生成一个随机排列的数组,可以是一个数字序列,也可以是多维数组的行或列的随机排列。
  • np.random.shuffle(): 这个函数更像是将一副牌面朝下放在桌上,然后你用手将其彻底洗混,使得牌的顺序完全改变。它用于就地打乱数组的元素顺序。

总的来说,np.random.rand() 生成均匀分布的浮点数,np.random.randn() 生成标准正态分布的浮点数,np.random.randint() 生成指定范围内的整数,而 np.random.permutation() 生成随机排列的数组,np.random.shuffle() 则就地打乱数组的顺序。

因为random(), rand()特别相似,所以我们单独拿来解释:

random()rand()这两个函数都用于生成随机数,但它们属于不同的模块。具体区别分析如下:

  1. 所属模块random()函数属于Python标准库中的random模块,而rand()函数是numpy.random模块的一部分。
  2. 返回类型random.random() 返回一个在[0, 1)范围内的浮点数,每次调用产生一个随机数。相比之下,np.random.rand()可以接收一个整数参数n,返回一个包含n个在[0, 1)范围内的均匀分布的浮点数的一维数组。如果不提供参数,默认情况下它返回一个单一的随机数,就像random.random()一样。
  3. 功能范围random.random()仅提供生成单个随机数的功能,而np.random.rand()可以生成任意长度的随机数序列,功能更为强大。

—————————END—————————

  • 26
    点赞
  • 10
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值