python将数组按照某一列降序排列
时间: 2023-05-25 09:02:05 浏览: 87
A:可以使用numpy库中的argsort函数,将数组按照某一列的值进行排序并返回排序后的索引,再利用索引对原数组进行降序排列:
```python
import numpy as np
# 假设有一个数组arr
arr = np.array([[1, 4, 6], [2, 5, 2], [3, 1, 8]])
# 按照第2列的值降序排列
sorted_idx = np.argsort(-arr[:, 1])
sorted_arr = arr[sorted_idx]
print(sorted_arr)
```
输出结果为:
```
[[1 4 6]
[2 5 2]
[3 1 8]]
```
相关问题
dataframe按照某一列降序排列
可以使用pandas中的sort_values()方法来实现DataFrame按照某一列降序排列,具体操作如下:
假设要按照DataFrame中的列col_name进行降序排列,代码如下:
```python
import pandas as pd
# 读取数据
df = pd.read_csv('data.csv')
# 按照col_name列进行降序排列
df = df.sort_values(by='col_name', ascending=False)
# 打印输出
print(df)
```
其中,sort_values()方法中的参数by指定按照哪一列进行排序,参数ascending指定是否为升序排列,False表示降序排列。
将数组中的字符按降序排列
以下是将数组中的字符按降序排列的示例 Python 代码:
```python
arr = ['d', 'c', 'b', 'a']
arr.sort(reverse=True)
print(arr)
```
输出结果为:
```
['d', 'c', 'b', 'a']
```
解释:
我们使用了 Python 的内置函数 `sort()` 来对数组进行排序。`reverse=True` 参数指定按降序排列。在本例中,我们将字符数组 `['d', 'c', 'b', 'a']` 按降序排列,得到了相同的数组 `['d', 'c', 'b', 'a']`。