numpy中的索引用法

索引

argmin--最小值索引,argmax--最大值索引

import numpy as np
x = np.random.normal(0,1,size=1000000)
np.min(x)
-4.736102442527367
np.argmin(x)
258131
x[258131]
-4.736102442527367
np.max(x)
4.788201736638607
np.argmax(x)
24635
x[24635]
4.788201736638607

排序和索引

x = np.arange(16)
x
array([ 0,  1,  2,  3,  4,  5,  6,  7,  8,  9, 10, 11, 12, 13, 14, 15])

shuffle--随机打乱数组

np.random.shuffle(x)
x
array([14, 10,  7,  8, 11,  0, 13,  5,  2,  3,  4, 15, 12,  9,  6,  1])

多维数组排序

x = np.random.randint(0,10,size=(4,4))
x
array([[7, 8, 0, 9],
       [5, 1, 8, 2],
       [3, 4, 0, 3],
       [6, 0, 3, 0]])
np.sort(x)#这里存在axis参数,与聚合函数中的原理一致,这里默认按行排序
array([[0, 7, 8, 9],
       [1, 2, 5, 8],
       [0, 3, 3, 4],
       [0, 0, 3, 6]])

按索引进行排序

x = np.arange(1,10)
np.random.shuffle(x)
x
array([4, 9, 7, 2, 8, 1, 3, 6, 5])
np.argsort(x)#这里是按照索引方式排序,3指的是原数组中最小值的索引为3
array([5, 3, 6, 0, 8, 7, 2, 4, 1], dtype=int64)

paritition--快速排序

传入一个标定值(这里是传入索引),返回一个以标定点划分的边界点,一边比标定点小,另外一边比标定点大

p = np.array([1,2,3,4,5,6,7,44,9,4])
p
array([ 1,  2,  3,  4,  5,  6,  7, 44,  9,  4])
np.partition(p,7)
array([ 2,  1,  3,  4,  4,  5,  6,  7,  9, 44])

原文地址:https://www.cnblogs.com/Missv4you/p/12032006.html

时间: 2024-07-31 18:11:01

numpy中的索引用法的相关文章

numpy中的norm用法

np.linalg.norm() computes the norm of a NumPy array according to an order, ord, which specifies the metric by which the norm takes. For example, if we are given an array [??1,...,????] with numbers ????xi then we can compute the Frobenius Norm or mor

Numpy中Meshgrid函数介绍及2种应用场景

近期在好几个地方都看到meshgrid的使用,虽然之前也注意到meshgrid的用法.但总觉得印象不深刻,不是太了解meshgrid的应用场景.所以,本文将进一步介绍Numpy中meshgrid的用法. Meshgrid函数的基本用法 在Numpy的官方文章里,meshgrid函数的英文描述也显得文绉绉的,理解起来有些难度.可以这么理解,meshgrid函数用两个坐标轴上的点在平面上画网格.用法: [X,Y]=meshgrid(x,y) [X,Y]=meshgrid(x)与[X,Y]=meshg

[笔记]numpy中的tile与kron的用法

numpy中提供了不少数学中矩阵的运算.构造函数. 闭上眼睛想一想,发现其中常用的也就是那么几个:cos, sin, mean, dot, max,min, outer,argsort,ones,zeros,arrange,reshape,fft---等. 想了半天,可以也不超过30个左右常用函数. 但是numpy的确博大精深:查看文档发现有大概586个方法或属性! 今天,我就记录一下numpy中,矩阵运算tile与kron的用处之一吧. 确切的讲,是谈论的在向量化运算方面的用处. 记得高等代数

[Perl系列—] 2. Perl 中的引用用法

Perl 中的引用,为什么要使用引用? 对于熟悉C语言的开发者来说, 指针这个概念一定不陌生. Perl 的引用就是指针,可以指向变量.数组.哈希表甚至子程序. Perl5中的两种Perl引用类型为硬Perl引用和符号Perl引用.符号Perl引用含有变量的名字,它对运行时创建变量名并定位很有用,基本上,符号Perl引用就象文件名或UNIX系统中的软链接.而硬Perl引用则象文件系统中的硬链接. Perl4只允许符号Perl引用,给使用造成一些困难.例如,只允许通过名字对包的符号名哈希表(名为_

Oracle中Cursor的用法

关键字 ?概念 ?类型 ?异常处理 一 概念 游标是SQL的一个内存工作区,由系统或用户以变量的形式定义.游标的作用就是用于临时存储从数据库中提取的数据块.在某些情况下,需要把数据从存放在磁 盘的表中调到计算机内存中进行处理,最后将处理结果显示出来或最终写回数据库.这样数据处理的速度才会提高,否则频繁的磁盘数据交换会降低效率. 二  类型   Cursor类型包含三种: 隐式Cursor,显式Cursor和Ref Cursor(动态Cursor). 1. 隐式Cursor: 1).对于Selec

jQuery中attr()方法用法实例

本文实例讲述了jQuery中attr()方法用法.分享给大家供大家参考.具体分析如下: 此方法设置或返回匹配元素的属性值. attr()方法根据参数的不同,功能也不同. 语法结构一: 获取第一个匹配元素指定属性的属性值. 代码如下: $(selector).attr(name) 参数列表: 参数 描述 name 定义要获取其值的属性名称. 实例代码: 代码如下: <!DOCTYPE html> <html> <head> <meta charset="

jQuery中eq()方法用法

这篇文章主要介绍了jQuery中eq()方法用法,实例分析了eq()方法的功能.定义及获取匹配元素集上的相应位置索引元素的使用技巧,需要的朋友可以参考下 本文实例讲述了jQuery中eq()方法用法.分享给大家供大家参考.具体分析如下: 此方法能够获取匹配元素集上的相应位置索引的元素. 匹配元素集上元素的位置索引是从0开始的. 语法结构: 复制代码 代码如下: $(selector).eq(index) 参数列表: 参数 描述 index 定义元素在元素集中的索引,从零开始的.      如果是

SQL中if exists用法细节

用if exists建表[转] 1 判断数据库是否存在 Sql代码 if exists (select * from sys.databases where name = ’数据库名’) drop database [数据库名]  if exists (select * from sys.databases where name = ’数据库名’) drop database [数据库名] 2 判断表是否存在 Sql代码 if exists (select * from sysobjects w

C#winform中OpenFileDialog的用法

private void btnOpenFileDialog_Click(object sender, EventArgs e) { OpenFileDialog oFD = new OpenFileDialog(); oFD.Title = "打开文件"; oFD.ShowHelp = true; oFD.Filter = "文本文件|*.txt|RTF文件|*.rtf|所有文件|*.*";//过滤格式 oFD.FilterIndex = 1; //格式索引 oF