python 浮点排序返回下标
时间: 2023-10-21 08:13:50 浏览: 119
你可以使用 `numpy.argsort()` 函数来获取浮点数数组排序后的下标数组。下面是一个示例代码:
```python
import numpy as np
arr = np.array([3.2, 1.5, 4.8, 2.1, 5.3])
idx = np.argsort(arr)
print(idx)
```
输出:
```
[1 3 0 2 4]
```
其中,`idx` 数组表示排序后每个浮点数在原数组中的下标位置。例如,排序后第一个浮点数为 `1.5`,在原数组中的下标位置为 `1`。因此,`idx[0]` 的值为 `1`。
相关问题
Python numpy的用法
Python的NumPy库是科学计算的基础包,它提供了一个强大的N维数组对象以及许多用于处理这些数组的函数。NumPy的主要用途包括:
1. **创建数组**:你可以使用`numpy.array()`函数创建数组,它可以接受列表、元组或其他序列作为输入。例如:`import numpy as np; arr = np.array([1, 2, 3])`。
2. **数据类型**:NumPy数组有固定的元素类型,一旦创建就不能改变,这保证了性能。常见的类型如整型(int)、浮点型(float)和复数(complex)等。
3. **数组操作**:支持大量的数学运算,比如加减乘除、矩阵运算(如求和、平均值、排序、切片等),还有广播机制可以方便地对不同形状的数组进行操作。
4. **索引和切片**:通过数组的下标(类似Python列表)可以访问和修改元素,而切片功能则可以提取子数组。
5. **维度操作**:NumPy支持多维度数组的操作,像轴向的堆叠、分割、重塑等。
6. **随机数生成**:提供了多种生成随机数的功能,这对于模拟和统计分析非常有用。
```python
# 示例
import numpy as np
arr = np.array([[1, 2], [3, 4]])
print(arr.shape) # (2, 2)
print(arr[0, 1]) # 输出:2
arr_sum = arr.sum() # 求和
rand_array = np.random.rand(5) # 随机生成5个0到1之间的浮点数
阅读全文