数组进行简单统计分析

直接排序

(1)sort 函数是最常用的排序方法。  格式:  arr.sort();
(2)sort 函数也可以指定一个 axis 参数,使得 sort 函数可以沿着指定轴对数据集进行排序。axis=1 为沿横轴排序; axis=0 为沿纵轴排序;

间接排序

(1)argsort 函数返回值为重新排序值的下标。  格式:  arr.argsort();

(2)lexsort 函数返回值是按照最后一个传入数据排序的。  格式:  np.lexsort((a,b,c));

去重与重复数据

(1)通过 unique 函数可以找出数组中的唯一值并返回已排序的结果。  格式:  np.unique ();

(2)tile 函数主要有两个参数,  参数“A”指定重复的数组,  参数“reps”指定重复的次数。  格式:  np.tile(A ,reps);

(3)repeat 函数主要有三个参数,参数“A”是需要重复的数组元素,参数“reps”是重复次数,参数“axis”指定沿着哪个轴进行重复,axis = 0 表示按行进行元素重复;axis =1 表示按列进行元素重复。  格式:  np.repeat(A, reps, axis=None);

1.直接排序

(1)一维数组的直接排序

import numpy as nparr = np.random.randint(1,10,size=10)   # 随机生成10个数的一维数组
print(arr)
# 结果例如 : [3 8 5 8 7 1 4 5 4 3]arr.sort()
print('排序后: ',arr)
# 结果例如 : [1 3 3 4 4 5 5 7 8 8]

(2)二维数组的直接排序

import numpy as np# (1)按行排序
arr2 = np.random.randint(1,10,size=[3,3]) # 随机生成3*3的二维数组
print(arr2)
# 结果例如 :
# [[9 8 4]
#  [2 2 1]
#  [4 1 8]]arr2.sort()
print('按行排序后: ',arr2)
# 结果例如 :
# [[4 8 9]
#  [1 2 2]
#  [1 4 8]]# (2)按列排序
arr3 = np.random.randint(1,10,size=[3,3]) # 随机生成3*3的二维数组
print(arr3)
# 结果例如 :
# [[5 6 2]
#  [5 3 8]
#  [1 3 7]]arr3.sort(axis = 0)   # 按列排序
print('按列排序后: ',arr3)
# 结果例如 :
# [[1 3 2]
#  [5 3 7]
#  [5 6 8]]

2.间接排序

(1)argsort(函数返回值是重新排序后的下标)

import numpy as nparr = np.array([2,3,6,8,0,7])
result = arr.argsort()
print(result)
# 结果: [4 0 1 2 5 3]

(2)lexsort(函数返回值是按最后一个传入的数据排序)

import numpy as nparr1 = np.array([3,2,6,4,5])
arr2 = np.array([50,30,40,20,10])
arr3 = np.array([400,300,600,100,200])result = np.lexsort((arr1,arr2,arr3))     # 按最后一个传入的数据排序,最后一个是arr3
print(result)
# 结果: [3 4 1 0 2]

3.去重与重复数据

(1)unique() 去重数据

import numpy as npnames = np.array(['小明','蘑菇','小旭','小明','小旭'])print(names)
# 结果: ['小明' '蘑菇' '小旭' '小明' '小旭']arr = np.unique(names)
print('去重后的数组为: ',arr)
# 结果: ['小旭' '小明' '蘑菇']

(2)title():  针对整个数组的重复,不针对单独元素的重复;

格式:  np.tile(数组,重复次数);

import numpy as npnames = np.array(['小明','蘑菇','小旭','小明'])arr2 = np.tile(names,3)
print('重复后的数组为: ',arr2)
# 结果: ['小明' '蘑菇' '小旭' '小明' '小明' '蘑菇' '小旭' '小明' '小明' '蘑菇' '小旭' '小明']

(3)repeat():  主要针对元素重复;

格式:  np.repeat(数组,重复次数,重复格式)  或  name.repeat(重复次数,重复格式) ;

注意:  axis = 0按行重复;   axis = 1按列重复;

(3.1)按行重复

import numpy as npname = np.arange(1,10).reshape((3,3))
print(name)
# 结果:
# [[1 2 3]
#  [4 5 6]
#  [7 8 9]]arr = np.repeat(name,2,axis = 0) # 按行重复
# arr = name.repeat(2,axis = 0) # 2个参数的写法,效果如上行代码
print(arr)
# 结果:
# [[1 2 3]
#  [1 2 3]
#  [4 5 6]
#  [4 5 6]
#  [7 8 9]
#  [7 8 9]]

(3.2)按列重复

import numpy as npname = np.arange(1,10).reshape((3,3))
print(name)
# 结果:
# [[1 2 3]
#  [4 5 6]
#  [7 8 9]]# arr = np.repeat(name,2,axis = 1) # 按列重复
arr = name.repeat(2,axis = 1) # 2个参数的写法,效果如上行代码
print(arr)
# 结果:
# [[1 1 2 2 3 3]
#  [4 4 5 5 6 6]
#  [7 7 8 8 9 9]]

NumPy-简单的统计分析相关推荐

  1. 数据挖掘技术-使用函数进行简单的统计分析

    使用函数进行简单的统计分析 排序 sort函数的排序方法可以指定一个axis参数,使得sort函数可以沿着指定轴对数据集进行排序,如代码 46所示. 代码 46 使用sort函数进行排序 In[10] ...

  2. sas简单描述统计分析和散点图

    简单描述统计分析 一. means过程 (一)例题和语句分析 例题1:某车间有30个人分成4组,求车间工人平均每小时制作的配件个数 data data3_1; input no w n; /*按自由格 ...

  3. Numpy 简单教程(二)数组的形状(shape)操作

    更过的Numpy教程连载内容:https://blog.csdn.net/qq_38962621/category_10302107.html Numpy数组的形状(shape)操作 首先,使用 nd ...

  4. 【Python】Numpy简单入门

    Numpy   Numpy是Python中科学计算的核心库.Numpy提供了高性能的多维数组对象,还有用于处理这些数组的工具. 数组   Numpy的主要数据类型是ndarray即多维数组,可以用嵌套 ...

  5. python3 matlabplot 和numpy 简单绘图

    import matplotlib.pyplot as plt import numpy as npx = np.linspace(0, 2 * np.pi, 200) y = np.sin(x)fi ...

  6. numpy简单实现梯度投影法

    import numpy as np # 约束投影算法意思就是 # 1. 我们的问题是求最小值(可能是局部最小) # 2. 求最值我们都会想到用梯度下降算法,但是下降的方向是否应该也有一个约束比较好? ...

  7. knn算法,利用numpy简单实现

    首先明确概念: 回归:预测体重.预测房价.预测损失. 结果是不容易确定的. 分类:预测男女.预测是否能通过考试 结果是容易确定的. 我的理解:回归针对连续的数据.分类针对离散的数据. 回归连续.分类离 ...

  8. Numpy简易教程8——简易分析

    使用函数进行简单的统计分析 1.排序 NumPy的排序方式主要可以概括为直接排序和间接排序两种. 直接排序指对数值直接进行排序. 间接排序是指根据一个或多个键对数据集进行排序. 在NumPy中,直接排 ...

  9. Python实战系列(三)——基于Numpy和Matplotlib的图表绘制(折线图和堆积柱状图)

    2022学年第1学期人文地理学展示所负责的珠三角工业化现状出图部分,基于python进行简单的统计分析和图像绘制,本系列主要用于记录代码,大家可进行参考,初学者,Python编码习惯不好,见谅. im ...

  10. NumPy学的还不错?来试试这20题

    来源 | 早起Python(ID: zaoqi-python) 又到了NumPy进阶修炼专题.NumPy大家应该不陌生了,看了太多的原理讲解之后,用刷题来学习是最有效的方法,本文将带来20个NumPy ...

最新文章

  1. java response.write_response设置编码方式 print和write方法的对比
  2. 推荐系统炼丹笔记:阿里推荐算法特征交叉新方式CAN
  3. android环境搭建出错,androidstudio配置环境遇到的各种错误(持续更新中)
  4. PrintJ的设计模式之旅——1.模式之父
  5. java学习是什么_学习JAVA有什么作用?
  6. Chrome在302重定向的时候对原请求产生2次请求的问题说明
  7. 【读书笔记】--SQL基础概念复习
  8. ⌊N/1⌋,⌊N/2⌋,...⌊N/N⌋的值的集合的分析
  9. 2021年中国物流科技行业投融资现状及未来发展前景分析[图]
  10. 微信公众帐号中使用的QQ表情代码对照表
  11. lede 内核 单 编_openwrt详细设置教程,lede固件设置中文
  12. 如何根据MAC地址获取设备厂商
  13. java 股票数据接口_股票数据查询接口
  14. 2022年陕西中级审计师考试练习题及答案
  15. excel中如何进行元单位到万元单位的转换
  16. 循序渐进Linux目录
  17. 爆笑!你知道msdn与csdn的意思吗?
  18. matlab模糊系统设计 pdf,基于MATLAB的模糊控制系统设计.pdf
  19. SUS战队专访 | 关于赛题,能说的都在这里了
  20. 苹果闪退解决方法_逃离塔科夫游戏闪退解决方法

热门文章

  1. java计算机毕业设计Web产品管理系统源码+数据库+系统+lw文档
  2. 正在做的一款HTML5多人在线扑克牌游戏:99分
  3. Linux中_Ubuntu上_使用命令总结整理_02
  4. markdown希腊字母对应表
  5. python如何计算运行时间以及运行内存
  6. 图片格式与设计那些事
  7. 基于CART分类方法的决策树(机器学习)
  8. 电脑开机时的硬盘自检要怎么关闭
  9. 头歌--Java面向对象 - 类与对象
  10. JS1K 2013优胜作品公布 3D蜜蜂仅获亚军