NumPy-简单的统计分析
数组进行简单统计分析
直接排序
(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-简单的统计分析相关推荐
- 数据挖掘技术-使用函数进行简单的统计分析
使用函数进行简单的统计分析 排序 sort函数的排序方法可以指定一个axis参数,使得sort函数可以沿着指定轴对数据集进行排序,如代码 46所示. 代码 46 使用sort函数进行排序 In[10] ...
- sas简单描述统计分析和散点图
简单描述统计分析 一. means过程 (一)例题和语句分析 例题1:某车间有30个人分成4组,求车间工人平均每小时制作的配件个数 data data3_1; input no w n; /*按自由格 ...
- Numpy 简单教程(二)数组的形状(shape)操作
更过的Numpy教程连载内容:https://blog.csdn.net/qq_38962621/category_10302107.html Numpy数组的形状(shape)操作 首先,使用 nd ...
- 【Python】Numpy简单入门
Numpy Numpy是Python中科学计算的核心库.Numpy提供了高性能的多维数组对象,还有用于处理这些数组的工具. 数组 Numpy的主要数据类型是ndarray即多维数组,可以用嵌套 ...
- python3 matlabplot 和numpy 简单绘图
import matplotlib.pyplot as plt import numpy as npx = np.linspace(0, 2 * np.pi, 200) y = np.sin(x)fi ...
- numpy简单实现梯度投影法
import numpy as np # 约束投影算法意思就是 # 1. 我们的问题是求最小值(可能是局部最小) # 2. 求最值我们都会想到用梯度下降算法,但是下降的方向是否应该也有一个约束比较好? ...
- knn算法,利用numpy简单实现
首先明确概念: 回归:预测体重.预测房价.预测损失. 结果是不容易确定的. 分类:预测男女.预测是否能通过考试 结果是容易确定的. 我的理解:回归针对连续的数据.分类针对离散的数据. 回归连续.分类离 ...
- Numpy简易教程8——简易分析
使用函数进行简单的统计分析 1.排序 NumPy的排序方式主要可以概括为直接排序和间接排序两种. 直接排序指对数值直接进行排序. 间接排序是指根据一个或多个键对数据集进行排序. 在NumPy中,直接排 ...
- Python实战系列(三)——基于Numpy和Matplotlib的图表绘制(折线图和堆积柱状图)
2022学年第1学期人文地理学展示所负责的珠三角工业化现状出图部分,基于python进行简单的统计分析和图像绘制,本系列主要用于记录代码,大家可进行参考,初学者,Python编码习惯不好,见谅. im ...
- NumPy学的还不错?来试试这20题
来源 | 早起Python(ID: zaoqi-python) 又到了NumPy进阶修炼专题.NumPy大家应该不陌生了,看了太多的原理讲解之后,用刷题来学习是最有效的方法,本文将带来20个NumPy ...
最新文章
- java response.write_response设置编码方式 print和write方法的对比
- 推荐系统炼丹笔记:阿里推荐算法特征交叉新方式CAN
- android环境搭建出错,androidstudio配置环境遇到的各种错误(持续更新中)
- PrintJ的设计模式之旅——1.模式之父
- java学习是什么_学习JAVA有什么作用?
- Chrome在302重定向的时候对原请求产生2次请求的问题说明
- 【读书笔记】--SQL基础概念复习
- ⌊N/1⌋,⌊N/2⌋,...⌊N/N⌋的值的集合的分析
- 2021年中国物流科技行业投融资现状及未来发展前景分析[图]
- 微信公众帐号中使用的QQ表情代码对照表
- lede 内核 单 编_openwrt详细设置教程,lede固件设置中文
- 如何根据MAC地址获取设备厂商
- java 股票数据接口_股票数据查询接口
- 2022年陕西中级审计师考试练习题及答案
- excel中如何进行元单位到万元单位的转换
- 循序渐进Linux目录
- 爆笑!你知道msdn与csdn的意思吗?
- matlab模糊系统设计 pdf,基于MATLAB的模糊控制系统设计.pdf
- SUS战队专访 | 关于赛题,能说的都在这里了
- 苹果闪退解决方法_逃离塔科夫游戏闪退解决方法