python-函数-统计函数
#(1)amax(),amin() 作用:计算数组中的元素沿指定轴的最大值,最小值
import numpy as np
x = np.random.randint(1,11,9).reshape((3,3))
print(x)
#output:
[[ 9 1 2]
[ 5 2 6]
[10 10 3]]
print(np.amin(x,0))
#每一列的最小值
print(np.amin(x,1))
#每一行的最小值
print(np.amax(x,0))
#每一列的最大值
print(np.amax(x,1))
#每一行的最大值
#output:
[5 1 2]
[1 2 3]
[10 10 6]
[ 9 6 10]
#(2)ptp() 作用:计算数组中元素最大值与最小值的差(最大值-最小值)
import numpy as np
x = np.random.randint(1,11,9).reshape((3,3))
print(x) print(np.ptp(x)) print(np.ptp(x,0)) print(np.ptp(x,1))
#output:
[[10 6 2]
[ 2 10 10]
[ 6 5 10]]
8
[8 5 8]
[8 8 5]
#(3)percentile() 原型:numpy.percentile(a,p,axis) #a为数组 p为要计算的百分位数,在0~100之间,axis:沿着它计算百分比的轴 作用:百分位数是统计中使用的度量,表示小于这个值的观察值的百分比
x = np.array([[10,7,4],[3,2,1]])
print(x)
print(np.percentile(x,50))
print(np.percentile(x,50,axis=0))
print(np.percentile(x,50,axis=1))
(10+3)/2=6.5
#output:
[[10 7 4]
[ 3 2 1]]
3.5
[6.5 4.5 2.5]
[7. 2.]
#(4)median() 作用:算数组中元素的中位数(中值)
import numpy as np
x = np.array([[30,65,70],[80,95,10],[50,90,60]])
print(x)
print("\n") print(np.median(x))
print(np.median(x,axis=0))
print(np.median(x,axis=1))
#(5)mean() 作用:返回数组中元素的算数平方根
import numpy as np
x = np.arange(1,10).reshape((3,3))
print("x数组:")
print(x)
print("\n") print(np.mean(x))
print(np.mean(x,axis=0))
print(np.mean(x,axis=1))
#output:
x数组:
[[1 2 3]
[4 5 6]
[7 8 9]] 5.0
[4. 5. 6.]
[2. 5. 8.]
#(6)average()作用:根据在另一个数组中给出的各自权重计算数组中的元素的加权平均值,可以接受一个轴参数。如果没有指定轴,则数组会被展开
import numpy as np
x = np.array([1,2,3,4])
print(x)
print(np.average(x))
wts = np.array([4,3,2,1])
print(np.average(x,weights=wts))
#如果return 参数为true,则返回权重的和
print("权重的和:")
print(np.average([1,2,3,4],weights=[4,3,2,1],returned=True)) x = np.array([0,1,2,3,4,5]).reshape((3,2))
print(x)
wts = np.array([3,5])
print(np.average(x,axis=1,weights=wts))
#(0*3+1*5)/(3+5)=5/8=0.625
#output:
[1 2 3 4]
2.5
2.0
权重的和:
(2.0, 10.0)
[[0 1]
[2 3]
[4 5]]
[0.625 2.625 4.625]
#(7)标准差 公式: std = sqrt(mean((x-x.mean())**2))
如果数组是[1,2,3,4],则其平均值为2.5,因此,差的平方是[2.25,0.25,0.25,2.25],并且其平均值的平方根除以4,即sqrt(5/4),结果为1.118033........
x = np.array([1,2,3,4])
print(x)
x - np.mean(x)
1.5*1.5
0.5*0.5
y = np.array([2.25,0.25,0.25,2.25])
np.mean(y)
np.sqrt(1.25)
#也即
import numpy as np
print(np.std([1,2,3,4]))
#output:
[1 2 3 4]
1.118033988749895
#(8)方差. mean((x-x.mean())**2) 标准差是方差的平方根
print(np.var([1,2,3,4]))
#也即
x = np.array([1,2,3,4])
x - np.mean(x)
y = np.array([2.25,0.25,0.25,2.25])
print(y)
np.mean(y)
#output:
1.25
[2.25 0.25 0.25 2.25]
1.25
参考视频:哔哩哔哩——马士兵教育-杨淑娟
python-函数-统计函数的更多相关文章
- python 函数之day3
一 函数的语法及特性 什么是函数? 定义:函数是一个功能通过一组语句的集合,由名字(函数名)将其封装起来的代码块,要想执行这个函数,只要调用其函数名即可. 特性: 减少重复代码 使程序变的可扩展 使程 ...
- Python函数作用域的查找顺序
函数作用域的LEGB顺序 1.什么是LEGB? L:local 函数内部作用域 E:enclosing 函数内部与内嵌函数之间 G:global 全局作用域 B:build-in 内置作用域 2.它们 ...
- Python函数讲解
Python函数
- Python函数信息
Python函数func的信息可以通过func.func_*和func.func_code来获取 一.先看看它们的应用吧: 1.获取原函数名称: 1 >>> def yes():pa ...
- Python函数参数默认值的陷阱和原理深究"
本文将介绍使用mutable对象作为Python函数参数默认值潜在的危害,以及其实现原理和设计目的 本博客已经迁移至: http://cenalulu.github.io/ 本篇博文已经迁移,阅读全文 ...
- Python开发【第四章】:Python函数剖析
一.Python函数剖析 1.函数的调用顺序 #!/usr/bin/env python # -*- coding:utf-8 -*- #-Author-Lian #函数错误的调用方式 def fun ...
- Python函数解析
对于Python的函数,我们需要记住的是: 1. 函数的默认返回值是None. 2. python是一个自上而下逐行解释并执行的语言.因此,函数的定义必须在函数被调用之前.同名的函数,后定义的会覆盖前 ...
- Python入门笔记(18):Python函数(1):基础部分
一.什么是函数.方法.过程 推荐阅读:http://www.cnblogs.com/snandy/archive/2011/08/29/2153871.html 一般程序设计语言包含两种基本的抽象:过 ...
- Python函数1
Python 函数命令的使用 想想我们之前数学中学到的函数,首先我们需要定义一个函数,例如f(x)=x, 当x输入任意数的时候,f(x)都能输出和x相等的数值. 那么在Python中是如何实现的呢? ...
- python函数传参是传值还是传引用?
首先还是应该科普下函数参数传递机制,传值和传引用是什么意思? 函数参数传递机制问题在本质上是调用函数(过程)和被调用函数(过程)在调用发生时进行通信的方法问题.基本的参数传递机制有两种:值传递和引用传 ...
随机推荐
- 解决报错Error response from daemon: Get https://10.0.0.110/v2/: dial tcp 10.0.0.110:443: connect: connection refused
修改 #https不需要验证,否则要加上以下配置# 意思就是非安全仓库,加上重启就OK了! vim /lib/systemd/system/docker.service --insecure-regi ...
- Eclipse 安装配置和 Git 创建代码库 教程
1. Eclipse 安装 http://www.eclipse.org/downloads/ 这是eclipse的官网,进入下载,步骤如下图: 选择Download或者下面的 [Select Ano ...
- OpenWrt之feeds.conf.default详解
目录 OpenWrt之feeds.conf.default详解 文件内容 命令解释 src-svn与src-gitsvn src-git与src-git-full src-cpy与src-link 其 ...
- 反射概述和反射获取字节码Class对象的三种方式
反射:框架设计的灵魂 框架:半成品软件.可以在框架的基础上进行软件开发,简化变法 反射:将类的各个组成部分封装为其他对象,这就是反射机制 好处: 1.可以在程序运行的过程中操作这些对象. 2.可以解耦 ...
- GreatSQL重磅特性,InnoDB并行并行查询优化测试
欢迎来到 GreatSQL社区分享的MySQL技术文章,如有疑问或想学习的内容,可以在下方评论区留言,看到后会进行解答 GreatSQL社区原创内容未经授权不得随意使用,转载请联系小编并注明来源. 1 ...
- 开源风吹动开源心 ~ 8月16日,你若来,我们(Apache)在等你!
点击上方蓝字关注ALC Beijing 抢! 太好看了吧! 买它,就是它,买它! 要抢! ALC是Apache Local Community的缩写,是全世界范围的 Apache 开源爱好者本地群组. ...
- Vim配置文件-详解(.vimrc)
Vim配置文件的作用 Vim启动时,会根据配置文件(.vimrc)来设置 Vim,因此我们可以通过此文件来定制适合自己的 Vim Vim分类 系统Vim配置文件/etc/vimrc 所有系统用户在启动 ...
- STC8H开发(十六): GPIO驱动XL2400无线模块
目录 STC8H开发(一): 在Keil5中配置和使用FwLib_STC8封装库(图文详解) STC8H开发(二): 在Linux VSCode中配置和使用FwLib_STC8封装库(图文详解) ST ...
- SpringBoot中如何使用自带的定时任务
随便创建一个类,@Component交给spring管理,用注解@EnableScheduling,让定时任务生效 方法上加注解:@Scheduled(cron = "你的cron表达式&q ...
- 【HTML】学习路径5-预格式标签和字体标签
<!DOCTYPE html> <html> <head> <title>我是标题</title> <meta charset=&qu ...