1-100之间产生随机数20个,存数组a(4*5)中,把每一行最大值替换为1,每一行最小值替换为0,用python的numpy写出来
时间: 2024-10-09 17:09:35 浏览: 61
随机数排序_20个随机数_数组排序_源码
5星 · 资源好评率100%
可以使用Python的NumPy库来实现这个需求。首先,你需要生成一个1到100之间的随机整数数组,然后找到每行的最大值和最小值,最后对数组进行条件赋值操作。以下是具体的代码:
```python
import numpy as np
# 生成20个1到100的随机数
random_numbers = np.random.randint(1, 101, (4, 5))
# 找出每行的最大值和最小值
max_values = random_numbers.max(axis=1)
min_values = random_numbers.min(axis=1)
# 将最大值替换为1,最小值替换为0
random_numbers[random_numbers == max_values[:, None]] = 1 # 使用None扩展维度
random_numbers[random_numbers == min_values[:, None]] = 0
print(random_numbers)
```
这段代码首先创建了一个4行5列的数组,接着分别计算了每行的最大值和最小值,并将这两个值应用到原始数组上,实现了题目的要求。
阅读全文