考察numpy的掩码操作products '=np.array(['Mi','Huawei','Apple', 'Sansung',"Mate30Pro"])prices = np.array([2999,4999,8888,3999,2000])代码实现:Numpy 实现商品价格从高到低降序排列
时间: 2023-12-23 13:01:56 浏览: 109
可以使用numpy的argsort函数和切片操作来实现商品价格从高到低的降序排列,具体代码如下:
```python
import numpy as np
products = np.array(['Mi', 'Huawei', 'Apple', 'Sansung', 'Mate30Pro'])
prices = np.array([2999, 4999, 8888, 3999, 2000])
# 使用argsort函数获取价格从小到大的索引
sort_idx = np.argsort(prices)
# 将索引倒序切片,得到价格从高到低的降序排列
sort_idx_desc = sort_idx[::-1]
# 使用切片操作获取降序排列的商品和价格
products_desc = products[sort_idx_desc]
prices_desc = prices[sort_idx_desc]
print(products_desc)
print(prices_desc)
```
输出结果为:
```
['Apple' 'Huawei' 'Sansung' 'Mi' 'Mate30Pro']
[8888 4999 3999 2999 2000]
```
可以看到,输出结果中商品和价格都是按照价格从高到低的降序排列的。
相关问题
考试题9: 考察numpy的掩码操作 products = np.array(['Mi', 'Huawei', 'Apple', 'Sansung',"Mate30Pro"])prices = np.array([2999, 4999, 8888, 3999,2000]) 代码实现:Numpy实现商品价格从高到低降序排列。
可以使用numpy的argsort()方法实现商品价格从高到低的降序排列。代码如下:
```python
import numpy as np
products = np.array(['Mi', 'Huawei', 'Apple', 'Sansung', 'Mate30Pro'])
prices = np.array([2999, 4999, 8888, 3999, 2000])
# 使用argsort()方法获取价格从小到大的索引值
sorted_idx = np.argsort(prices)
# 将索引值反转,得到价格从高到低的降序排列的索引值
sorted_idx = sorted_idx[::-1]
# 使用排序后的索引值获取商品名称和价格
sorted_products = products[sorted_idx]
sorted_prices = prices[sorted_idx]
print(sorted_products)
print(sorted_prices)
```
输出结果为:
```
['Apple' 'Huawei' 'Sansung' 'Mi' 'Mate30Pro']
[8888 4999 3999 2999 2000]
```
可以看到,商品价格已经按照从高到低的降序排列。
import numpy as npb = np.array(1, 11.0)print(b)
这段代码同样存在语法错误,应该是:
```
import numpy as np
b = np.array([1, 11.0])
print(b)
```
这段代码的作用是创建一个 NumPy 数组 `b`,其中包含两个元素:整数 1 和浮点数 11.0。然后将 `b` 打印出来。输出结果为:
```
[ 1. 11.]
```
阅读全文