【Python】排序与搜索

2021-04-02 Views Python | ndarry582字3 min read

1. 排序

(1) sort

基本语法格式:

numpy.sort(a, axis=-1, kind='quicksort', order=None)

sort函数的常用参数及说明

参数名称 说明
a 接收array,表示想要排序的ndarray,无默认值
axis 接收int,表示指定的轴,axis=1时指定横轴,axis=0时指定纵轴。默认值为-1,即ndarry被横向展开排序
kind 接收str,表示排列算式,可取quicksort、mergesort、heapsort、stable。默认为quicksort
import numpy as np
np.random.seed(42)              #设置随机种子
arr = np.random.randint(1,10,size=12).reshape(4,3)
print(arr)

print(np.sort(arr))             #默认排序

print(np.sort(arr,axis=None))   #展平排序

print(np.sort(arr,axis=1))      #横轴排序

print(np.sort(arr,axis=0))      #纵轴排序
sort

(2) argsort / lexsort

基本语法格式:

numpy.argsort(a, axis=-1, kind='quicksort', order=None)

rgsort函数的常用参数及说明

参数名称 说明
a 接收array,表示想要排序的ndarray,无默认值
axis 接收int,表示指定的轴,axis=1时指定横轴,axis=0时指定纵轴。默认值为-1,即ndarry被横向展开排序
kind 接收string,表示排列算式,可取quicksort、mergesort、heapsort、stable。默认为quicksort
import numpy as np
np.random.seed(42)                  #设置随机种子
arr = np.random.randint(1,10,size=12).reshape(4,3)
print(np.argsort(arr,axis=1))       #横轴排序

print(np.argsort(arr,axis=None))    #展平排序
Sngsort / lexsort

2. 搜索

(1) argmax / argmin

基本语法格式:

numpy.argmax(a, axis=None, out=None)
numpy.argmin(a, axis=None, out=None)

argmax / argmin函数的常用参数及说明

参数名称 说明
a 接收array,表示想要排序的ndarray,无默认值
axis 接收int,表示指定的轴,axis=1时指定横轴,axis=0时指定纵轴
arr = np.arange(6,12).reshape(2,3)
print(np.argmax(arr))
print(np.argmin(arr))

print(np.argmax(arr,axis=0))
print(np.argmin(arr,axis=1))
argmax / argmin

(2) where

基本语法格式:

numpy.where(condition, x, y)

where函数的常用参数及说明

参数名称 说明
condition 接收array、bool,表示搜索条件,无默认值
x 接收array,表示搜索对象,无默认值
y 接收array,表示不满足条件的值的替换值,无默认值

(3) extract

基本语法格式:

numpy.extract(condition, arr)

extract函数的常用参数及说明

参数名称 说明
condition 接收array,表示搜索条件,无默认值
arr 接收array,表示满足条件的元素,无默认值
EOF