【笔记】python数据分析——numpy随机数函数
## 往期数据分析笔记[【笔记】python数据分析——numpy初识1](https://www.52pojie.cn/thread-1381772-1-1.html)
[【笔记】python数据分析——numpy初识2](https://www.52pojie.cn/thread-1382691-1-1.html)
[【笔记】python数据分析——变换与编程中的轴](https://www.52pojie.cn/thread-1383508-1-1.html)
## numpy中的随机数函数
开始之前我们先导入numpy包
```
import numpy as np
```
### 1.均匀分布
- rand(均匀分布,在相同长度的间隔的分布概率是等可能的)
```
print(np.random.rand(2,3))
```
运行结果:
[
]
这个函数就是返回一个0-1之间等可能的随机数
- randint(给定范围随机整数,这个函数有三个参数,第一个是给定返回的最小值,第二个是给定范围的最大值,第三个是形状)
```
print(np.random.randint(1,10,(2,3)))
```
运行结果:
[
]
上面代码的意思是:创建了1-10范围之间的两行三列的**整数**
- randn(正态分布,正态曲线呈钟型,两头低,中间高,左右对称因其曲线呈钟形,因此人们又经常称之为钟形曲线)
```
print(np.random.randn(2,3))
```
运行结果:
[[ 1.531158570.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))
```
运行结果:
[
]
[
]
[[ 2.6460672-0.04386375 -0.96561968]
[ 0.87866389 -2.245874831.11957525]]
如果你不希望固定随机数的话可以把第一行代码删除
### 乱序排列
- permutation(乱序,不改变原数组)
```
arr1 = np.arange(1,10)
print(arr1)
arr2 = np.random.permutation(arr1)
print(arr2)
```
运行结果:
- shuffle(乱序,直接改变原数组)
```
arr1 = np.arange(1,10)
print(arr1)
np.random.shuffle(arr1)
print(arr1)
```
运行结果:
### 给定参数的随机数
- uniform(给定参数均匀分布)
```
print(np.random.uniform(1,10,(2,3)))
```
运行结果:
[
]
给定1-10范围,两行三列的值,数字出现的概率相等
- normal(给定参数正态分布)
```
print(np.random.normal(0,1,(2,3)))
```
运行结果:
[[ 0.0319746 1.18246826 -1.12076831]
[-0.85800742 -0.527158691.11385518]]
0是均值(加起来的和为0),1是标准差(最大值和最小值相差1)
- poisson(给定参数泊松分布)
```
print(np.random.poisson(0,(2,3)))
print(np.random.poisson(2,(2,3)))
```
运行结果:
[
]
[
]
**2是发生概率(0代表没发生,非0数即为发生),两行三列**
## 今日鸡汤
当你下定决定做一件事,那就去尽力做,即便这件事最后没有达到你的预期回报,但你还是得认真、努力去完成,在这过程中,你会逐渐认识到自己的不足,认清自己真正想要什么。给自己一个期限,不用告诉所有人,不要犹豫,直到你真的尽力为止。 LZ你看的哪本书呐? 动物书,利用Python进行数据分析 氓之嗤嗤 发表于 2021-3-8 18:04
LZ你看的哪本书呐?
动物书,利用Python进行数据分析
页:
[1]