(1)生成0~1之间、服从均匀分布的10行5列的ndarray; (2)生成一个5*5的ndarray对象,且数组边界全为1,里面全为0; (3)创建一个随机数范围在0~50内的4*3随机ndarray;
时间: 2024-09-10 15:05:24 浏览: 197
1. 生成0~1之间、服从均匀分布的10行5列的ndarray。可以使用NumPy库中的`np.random.rand()`函数来实现。这个函数会生成一个给定形状的数组,数组中的元素服从[0,1)区间的均匀分布。
```python
import numpy as np
# 生成10行5列的均匀分布ndarray
array_uniform = np.random.rand(10, 5)
```
2. 生成一个5*5的ndarray对象,且数组边界全为1,里面全为0。这可以通过创建一个全0的数组,然后修改边界为1来完成。
```python
# 创建一个5*5的全0数组
array_board = np.zeros((5, 5))
# 边界设置为1
array_board[0, :] = array_board[-1, :] = array_board[:, 0] = array_board[:, -1] = 1
```
3. 创建一个随机数范围在0~50内的4*3随机ndarray。可以使用`np.random.randint()`函数来生成指定范围内的随机整数数组。
```python
# 生成一个4*3的随机数ndarray,元素范围为0~50(不包括50)
array_random = np.random.randint(0, 50, size=(4, 3))
```
相关问题
(1)生成0~1之间、服从均匀分布的10行5列的ndarray; (2)生成一个55的ndarray对象,且数组边界全为1,里面全为0; (3)创建一个随机数范围在0~50内的43随机ndarray;写一个完整代码
在Python中,可以使用NumPy库来生成满足您要求的ndarray对象。以下是完整的代码示例:
```python
import numpy as np
# (1)生成0~1之间、服从均匀分布的10行5列的ndarray
uniform_array = np.random.rand(10, 5)
print("均匀分布的10行5列数组:")
print(uniform_array)
# (2)生成一个5x5的ndarray对象,且数组边界全为1,里面全为0
edge_array = np.ones((5, 5), dtype=int) - np.eye(5, dtype=int)
print("\n边界为1,内部为0的5x5数组:")
print(edge_array)
# (3)创建一个随机数范围在0~50内的4x3随机ndarray
random_array = np.random.randint(0, 50, size=(4, 3))
print("\n随机数范围在0~50内的4x3数组:")
print(random_array)
```
执行上述代码后,将会按照您的要求分别生成三个ndarray对象,并打印出来。
numpy随机生成ndarray
可以使用numpy中的random模块来随机生成ndarray。以下是一些常用的随机生成函数:
1. numpy.random.rand(d0, d1, ..., dn):生成一个指定形状的数组,数组元素服从[0, 1)的均匀分布。
2. numpy.random.randn(d0, d1, ..., dn):生成一个指定形状的数组,数组元素服从标准正态分布(均值为0,方差为1)。
3. numpy.random.randint(low, high=None, size=None, dtype='l'):生成一个指定形状的数组,数组元素服从[low, high)的离散均匀分布。
4. numpy.random.normal(loc=0.0, scale=1.0, size=None):生成一个指定形状的数组,数组元素服从指定均值和标准差的正态分布。
例如,生成一个形状为(3, 4)的随机数组可以使用以下代码:
```python
import numpy as np
# 生成一个形状为(3, 4)的数组,数组元素服从标准正态分布
arr = np.random.randn(3, 4)
print(arr)
```
输出结果如下:
```
[[ 0.02768951 -0.78701997 0.89507278 0.33382019]
[ 0.30617635 -0.07562637 -0.15554766 -0.66327602]
[-0.58022116 0.43361111 -1.30555422 -0.89836699]]
```
阅读全文