Numpy数组排序、数组去重和重复、数组的统计分析

本文介绍了Numpy库中用于数组排序的`sort`、`argsort`、`lexsort`方法,去重和重复操作的`unique`、`tile`、`repeat`函数,以及数组统计分析的`sum`、`max`、`min`、`mean`、`std`、`var`、`argmax`、`argmin`、`cumsum`、`cumprod`等函数。通过实例展示这些功能的使用方法。
摘要由CSDN通过智能技术生成

1.数组排序:(sort、argsort、lexsort)

import numpy as np

# # 创建一个数组
arr = np.array([[3,2,5,8,1],[9,5,3,1,2]])
# print("arr:\n",arr)
"""
arr:
 [[3 2 5 8 1]
 [9 5 3 1 2]]
"""
#------------------分割线-------------------------
# # 对数组进行排序 --可以通过axis来指定排序的轴
arr.sort(axis=1)
# print("arr:\n",arr)
"""
arr:
 [[1 2 3 5 8]
 [1 2 3 5 9]]

"""

#------------------分割线-------------------------
#  argsort --返回排序后元素原来的下标
#  创建一个一维数组
arr = np.array([3,4,2,10,5,8,7,6])
res = arr.argsort()
# print(res)
"""
[2 0 1 4 7 6 5 3]
"""
#------------------分割线-------------------------

#  利用列表推导式进行 arr排序结果展示
new_arr = [arr[i] for i in res]
# print("new_arr:\n",new_arr)
"""
new_arr:
 [2, 3, 4, 5, 6, 7, 8, 10]
"""

#------------------分割线-------------------------
# lexsort
# 借助传入最后一个数组的排序规则对前面数组进行排序
a = np.array([3, 2, 6, 4, 5])
b = np.array([50, 30, 40, 20, 10])
c = np.array([400, 300, 600, 100, 200])
res = np.lexsort((a, b, c))
# 展示lexsort排序返回值
# print("res:\n",res)
"""
res:
 [3 4 1 0 2]
"""
#------------------分割线-------------------------
# 展示排序后的abc 数组
sorted_a = [a[i] for i in res]
sorted_b = [b[i] for i in res]
sorted_c = [c[i] for i in res]

# print("sorted_a:\n",sorted_a)
"""
sorted_a:
 [4, 5, 2, 3, 6]
"&
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值