生成一个形状为为n*2的二维数组,其中每个元素独立同分布来自于U(0,1),请取出所有满足条件的行:(1)第一列小于0.5(2)第二列小于0.5(3)两列求和大于0.5
时间: 2024-11-06 21:20:22 浏览: 32
你可以使用Python的NumPy库来创建一个n*2的二维数组,其中的元素都服从均匀分布(Uniform Distribution)U(0,1)。然后通过条件筛选,选择满足三个条件的行:
```python
import numpy as np
# 定义数组的大小
n = 100 # 可以自定义n的值
# 创建随机数组
arr = np.random.uniform(low=0, high=1, size=(n, 2))
# 提取满足条件的行
condition_1 = arr[:, 0] < 0.5
condition_2 = arr[:, 1] < 0.5
condition_3 = arr[:, 0] + arr[:, 1] > 0.5
# 使用all函数检查每一行是否同时满足三个条件
valid_rows = np.all([condition_1, condition_2, condition_3], axis=1)
# 选取满足所有条件的行
selected_rows = arr[valid_rows]
selected_rows
```
运行上述代码后,`selected_rows`将是一个n*2的二维数组,其中只包含第一列小于0.5、第二列小于0.5并且两列之和大于0.5的行。
阅读全文