幽灵资源网 Design By www.bzswh.com

简单介绍

NumPy系统是Python的一种开源的数组计算扩展。这种工具可用来存储和处理大型矩阵,比Python自身的嵌套列表(nested list structure)结构要高效的多(该结构也可以用来表示矩阵(matrix))。

创建数组

创建1维数组:

data = np.array([1,3,4,8])  

查看数组维度

data.shape

查看数组类型

data.dtype

通过索引获取或修改数组元素

data[1] 获取元素
data[1] = 'a' 修改元素 
 

创建二维数组

data = np.array([[1,2,3],[4,5,6]]) 两个元素均为列表<br>2.data = np.arange(10) 与python的range一样,range返回列表,arange返回array类型的一个数组<br>3.data2 = data.reshape(2,5) 返回一个2*5的数组,他不是拷贝数组是引用,只是返回数组的不同视图,data改变data2也会改变

创建特殊数组 

data = np.zeros((2,2)) 创建2*2全为0的2维数组
data = np.ones((2,3,3,)) 创建全为1的三维数组
data = np.eye(4) 创建4*4的对角数组,对角元素为1,其它都为0

数组转换

data = np.arange(16).reshape(4,4) 将0-16的移位数组转换为4*4的数组  

排序方式

说明:经常需要对数组或者list进行排序,python提供了好几种排序的函数,下面说明下特点;

二维数组a:

1 4
3 1

1、ndarray.sort(axis=-1,kind='quicksort',order=None)

使用方法:a.sort

参数说明:

axis:排序沿着数组的方向,0表示按行,1表示按列

kind:排序的算法,提供了快排、混排、堆排

order:不是指的顺序,以后用的时候再去分析这个

作用效果:对数组a排序,排序后直接改变了a

例如:

a.sort(axis=1)
print a
1 4
1 3

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

使用方法:numpy.sort(a)

参数说明:

a:要排序的数组,其他同1

作用效果:对数组a排序,返回一个排序后的数组(与a相同维度),a不变

例如:

print numpy.sort(a,axis=1)
1 4
1 3
print a
1 4
3 1

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

使用方法:numpy.argsort(a)

参数说明:同2

作用效果:对数组a排序,返回一个排序后索引,a不变

例如:

print numpy.argsort(a,axis=1)
0 1
1 0

4、sorted(iterable,cmp=None,key=None,reverse=False)

说明:内置的排序函数,对list,字典等等可以使用

iterable:是可迭代类型;

cmp:用于比较的函数,比较什么由key决定,有默认值,迭代集合中的一项;

key:用列表元素的某个属性和函数进行作为关键字,有默认值,迭代集合中的一项;

reverse:排序规则.reverse=True或者reverse=False,默认False(从小到大)。

返回值:是一个经过排序的可迭代类型,与iterable一样;

例如:b是一个字典

b:

{'a':2,'c':1,'b':3}

对b进行排序:

c=sorted(b.iteritems(),key=operator.itemgetter(1),reverse=False)
print c[('c', 1), ('a', 2), ('b', 3)]

可见:返回的是一个list

总结

以上就是本文关于浅谈numpy数组的几种排序方式的全部内容,希望对大家有所帮助。感兴趣的朋友可以继续参阅本站其他相关专题,如有不足之处,欢迎留言指出。感谢朋友们对本站的支持!

标签:
numpy,数组,数组的排序方式,numpy,二维数组,numpy,数组创建

幽灵资源网 Design By www.bzswh.com
广告合作:本站广告合作请联系QQ:858582 申请时备注:广告合作(否则不回)
免责声明:本站文章均来自网站采集或用户投稿,网站不提供任何软件下载或自行开发的软件! 如有用户或公司发现本站内容信息存在侵权行为,请邮件告知! 858582#qq.com
幽灵资源网 Design By www.bzswh.com

《魔兽世界》大逃杀!60人新游玩模式《强袭风暴》3月21日上线

暴雪近日发布了《魔兽世界》10.2.6 更新内容,新游玩模式《强袭风暴》即将于3月21 日在亚服上线,届时玩家将前往阿拉希高地展开一场 60 人大逃杀对战。

艾泽拉斯的冒险者已经征服了艾泽拉斯的大地及遥远的彼岸。他们在对抗世界上最致命的敌人时展现出过人的手腕,并且成功阻止终结宇宙等级的威胁。当他们在为即将于《魔兽世界》资料片《地心之战》中来袭的萨拉塔斯势力做战斗准备时,他们还需要在熟悉的阿拉希高地面对一个全新的敌人──那就是彼此。在《巨龙崛起》10.2.6 更新的《强袭风暴》中,玩家将会进入一个全新的海盗主题大逃杀式限时活动,其中包含极高的风险和史诗级的奖励。

《强袭风暴》不是普通的战场,作为一个独立于主游戏之外的活动,玩家可以用大逃杀的风格来体验《魔兽世界》,不分职业、不分装备(除了你在赛局中捡到的),光是技巧和战略的强弱之分就能决定出谁才是能坚持到最后的赢家。本次活动将会开放单人和双人模式,玩家在加入海盗主题的预赛大厅区域前,可以从强袭风暴角色画面新增好友。游玩游戏将可以累计名望轨迹,《巨龙崛起》和《魔兽世界:巫妖王之怒 经典版》的玩家都可以获得奖励。