数组的排序问题

方法一:使用numpy自带的sort函数,这个函数返回的是经过排序以后的复制数组

	import numpy as np
	s1=np.array([1,2,3,4,44,33,22,12,13,14,0.1,14])
	s2=np.sort(s1)
	print(s2)
	[ 0.1  1.   2.   3.   4.  12.  13.  14.  14.  22.  33.  44. ]
	
	s3=s1.reshape(3,4)
	s4=np.sort(s3)
	print(s3)
	print(s4)           #通过结果可以发现,对于多维数组而言,每一行经过排序,返回原来维度大小的新数组
	[[ 1.   2.   3.   4. ]
	 [44.  33.  22.  12. ]
	 [13.  14.   0.1 14. ]]
	 
	[[ 1.   2.   3.   4. ]
	 [12.  22.  33.  44. ]
	 [ 0.1 13.  14.  14. ]]
	 # 按照列来进行排序
    s5 = np.sort(s2,axis=0)
    print(s5)
    [[ 1.   2.   0.1  4. ]
	 [13.  14.   3.  12. ]
	 [44.  33.  22.  14. ]]

方法二:使用数组自带的sort方法,但是这种方法会改变数组原来的排序

		s1.sort()
        print(s1)
        # 在原有的基础上进行排序,会改变原来的数组
        s2:
        [[ 1.   2.   3.   4. ]
		 [44.  33.  22.  12. ]
		 [13.  14.   0.1 14. ]]
        s2.sort()  由后续代码可知,如果不填写axis的值 默认是按行重新排序
        print(s2)
        [[ 1.   2.   3.   4. ]
		 [12.  22.  33.  44. ]
		 [ 0.1 13.  14.  14. ]]
        s2.sort(axis=1)
        print(s2)
        # 按照行
        [[ 1.   2.   3.   4. ]
		 [12.  22.  33.  44. ]
		 [ 0.1 13.  14.  14. ]]
        s2.sort(axis=0)
        print(s2)
        [[ 1.   2.   0.1  4. ]
		 [13.  14.   3.  12. ]
		 [44.  33.  22.  14. ]]
        按照列
  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值