#(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-函数-统计函数的更多相关文章

  1. python 函数之day3

    一 函数的语法及特性 什么是函数? 定义:函数是一个功能通过一组语句的集合,由名字(函数名)将其封装起来的代码块,要想执行这个函数,只要调用其函数名即可. 特性: 减少重复代码 使程序变的可扩展 使程 ...

  2. Python函数作用域的查找顺序

    函数作用域的LEGB顺序 1.什么是LEGB? L:local 函数内部作用域 E:enclosing 函数内部与内嵌函数之间 G:global 全局作用域 B:build-in 内置作用域 2.它们 ...

  3. Python函数讲解

    Python函数

  4. Python函数信息

    Python函数func的信息可以通过func.func_*和func.func_code来获取 一.先看看它们的应用吧: 1.获取原函数名称: 1 >>> def yes():pa ...

  5. Python函数参数默认值的陷阱和原理深究"

    本文将介绍使用mutable对象作为Python函数参数默认值潜在的危害,以及其实现原理和设计目的 本博客已经迁移至: http://cenalulu.github.io/ 本篇博文已经迁移,阅读全文 ...

  6. Python开发【第四章】:Python函数剖析

    一.Python函数剖析 1.函数的调用顺序 #!/usr/bin/env python # -*- coding:utf-8 -*- #-Author-Lian #函数错误的调用方式 def fun ...

  7. Python函数解析

    对于Python的函数,我们需要记住的是: 1. 函数的默认返回值是None. 2. python是一个自上而下逐行解释并执行的语言.因此,函数的定义必须在函数被调用之前.同名的函数,后定义的会覆盖前 ...

  8. Python入门笔记(18):Python函数(1):基础部分

    一.什么是函数.方法.过程 推荐阅读:http://www.cnblogs.com/snandy/archive/2011/08/29/2153871.html 一般程序设计语言包含两种基本的抽象:过 ...

  9. Python函数1

    Python 函数命令的使用 想想我们之前数学中学到的函数,首先我们需要定义一个函数,例如f(x)=x, 当x输入任意数的时候,f(x)都能输出和x相等的数值. 那么在Python中是如何实现的呢? ...

  10. python函数传参是传值还是传引用?

    首先还是应该科普下函数参数传递机制,传值和传引用是什么意思? 函数参数传递机制问题在本质上是调用函数(过程)和被调用函数(过程)在调用发生时进行通信的方法问题.基本的参数传递机制有两种:值传递和引用传 ...

随机推荐

  1. 1_day01_java入门

    java入门 学习目标: 1.熟悉计算机编程语言 2.熟练掌握java特点 3.熟练配置java开发环境 4.熟练编写入门程序 5.熟练编写注释信息 一.计算机语言 1.1 什么是编程语言 计算机语言 ...

  2. C#基础-面向对象详解

    面向对象详解 一.什么是面向对象 1>面向对象是一种程序设计思想 2>面向过程和面向对象是什么? 例如要把大象放冰箱怎么做? 面向过程:打开冰箱门->把大象扔进去->关上冰箱门 ...

  3. python获取本机的安装所有应用( Windows)

    Windows获取本机的安装所有应用 采用操作注册表的方式,理论上其他可通过操作注册表方式的动作均可 import winreg def get_window_software(hive, flag) ...

  4. 内网渗透之Windows认证(二)

    title: 内网渗透之Windows认证(二) categories: 内网渗透 id: 6 key: 域渗透基础 description: Windows认证协议 abbrlink: d6b7 d ...

  5. 论文解读(JKnet)《Representation Learning on Graphs with Jumping Knowledge Networks》

    论文信息 论文标题:Representation Learning on Graphs with Jumping Knowledge Networks论文作者:Keyulu Xu, Chengtao ...

  6. 基于图像识别框架Airtest的Windows项目自动化测试实践

    写在前面 上一篇分享了<基于Sikuli GUI图像识别框架的PC客户端自动化测试实践>,但sikuli看起来怎么都像是上个世纪的界面风格,且功能过于简陋.而同样基于图像识别框架的Airt ...

  7. [MRCTF2020]套娃-1

    1.打开之后未发现有用的信息,右键检查源代码信息,发现部分代码信息,结果如下: 2.对代码进行分析:$_SERVER['QUERY_STRING']:指的是查询的字符串,即地址栏?之后的部分,%5f指 ...

  8. 巨细靡遗流程控制,Go lang1.18入门精炼教程,由白丁入鸿儒,Go lang流程结构详解EP09

    流程结构就是指程序逻辑到底怎么执行,进而言之,程序执行逻辑的顺序.众所周知,程序整体都是自上由下执行的,但有的时候,又不仅仅是从上往下执行那么简单,大体上,Go lang程序的流程控制结构一共有三种: ...

  9. 如何在Apple Silicon Mac上主动安装Rosetta2

    前提是您的电脑搭载了Apple Silicon处理器 command + space(空格),输入"终端",打开. 输入 : softwareupdate --install-ro ...

  10. 第二十五篇:vue-cli

    好家伙,感觉好像摸到一点核心了, 什么是vue-cli? 1.vue-cli官方提供的一个脚手架,用于快速生成一个vue模板, 预先定义好目录结构以及基础代码 2.什么是脚手架? (1)做电梯井抹灰. ...