用Python怎么算Mean和standard deviation可以用numpy模块实现:
import numpy
def cal_mean_std(sum_list_in):
# type: (list) - tuple
N = sum_list_in.__len__()
narray = numpy.array(sum_list_in)
sum = narray.sum()
mean = sum / N
narray_dev = narray - mean
narray_dev = narray_dev * narray_dev
sum_dev = narray_dev.sum()
DEV = float(sum_dev) / float(N)
STDEV = numpy.math.sqrt(DEV)
print "mean:", mean, "; DEV:", DEV, "; STDEV:", STDEV
return mean, DEV, STDEV
均值为mean,方差为DEV,标准差是STDEV
传入数据是一个list:sum_list_in
2021-02-08 Python OpenCV GaussianBlur()函数borderType= None)函数
此函数利用高斯滤波器平滑一张图像 。该函数将源图像与指定的高斯核进行卷积 。
src:输入图像
ksize:(核的宽度,核的高度),输入高斯核的尺寸,核的宽高都必须是正奇数 。否则,将会从参数sigma中计算得到 。
dst:输出图像,尺寸与输入图像一致 。
sigmaX:高斯核在X方向上的标准差 。
sigmaY:高斯核在Y方向上的标准差 。默认为None , 如果sigmaY=0,则它将被设置为与sigmaX相等的值 。如果这两者都为0,则它们的值会从ksize中计算得到 。计算公式为:
borderType:像素外推法,默认为None(参考官方文档 BorderTypes
)
在图像处理中,高斯滤波主要有两种方式:
1.窗口滑动卷积
2.傅里叶变换
在此主要利用窗口滑动卷积 。其中二维高斯函数公式为:
根据上述公式,生成一个3x3的高斯核 , 其中最重要的参数就是标准差,标准差越大,核中心的值与周围的值差距越小 , 曲线越平滑 。标准差越?。酥行牡闹涤胫芪У闹挡罹嘣酱? ,曲线越陡峭 。
从图像的角度来说,高斯核的标准差越大 , 平滑效果越不明显 。高斯核的标准差越?。交Ч矫飨?。
可见,标准差越大,图像平滑程度越大
参考博客1:关于GaussianBlur函数
参考博客2:关于高斯核运算
Python基础 numpy中的常见函数有哪些有些Python小白对numpy中的常见函数不太了解,今天小编就整理出来分享给大家 。
Numpy是Python的一个科学计算的库,提供了矩阵运算的功能,其一般与Scipy、matplotlib一起使用 。其实,list已经提供了类似于矩阵的表示形式,不过numpy为我们提供了更多的函数 。
数组常用函数
1.where()按条件返回数组的索引值
2.take(a,index)从数组a中按照索引index取值
3.linspace(a,b,N)返回一个在(a,b)范围内均匀分布的数组,元素个数为N个
4.a.fill()将数组的所有元素以指定的值填充
5.diff(a)返回数组a相邻元素的差值构成的数组
6.sign(a)返回数组a的每个元素的正负符号
7.piecewise(a,[condlist],[funclist])数组a根据布尔型条件condlist返回对应元素结果
8.a.argmax(),a.argmin()返回a最大、最小元素的索引
改变数组维度
a.ravel(),a.flatten():将数组a展平成一维数组
a.shape=(m,n),a.reshape(m,n):将数组a转换成m*n维数组
a.transpose,a.T转置数组a
数组组合
1.hstack((a,b)),concatenate((a,b),axis=1)将数组a,b沿水平方向组合
2.vstack((a,b)),concatenate((a,b),axis=0)将数组a,b沿竖直方向组合
3.row_stack((a,b))将数组a,b按行方向组合
4.column_stack((a,b))将数组a,b按列方向组合
数组分割
1.split(a,n,axis=0),vsplit(a,n)将数组a沿垂直方向分割成n个数组
2.split(a,n,axis=1),hsplit(a,n)将数组a沿水平方向分割成n个数组
数组修剪和压缩
1.a.clip(m,n)设置数组a的范围为(m,n),数组中大于n的元素设定为n,小于m的元素设定为m
2.a.compress()返回根据给定条件筛选后的数组
数组属性
1.a.dtype数组a的数据类型
2.a.shape数组a的维度
3.a.ndim数组a的维数
4.a.size数组a所含元素的总个数
5.a.itemsize数组a的元素在内存中所占的字节数
6.a.nbytes整个数组a所占的内存空间7.a.astype(int)转换a数组的类型为int型
数组计算
1.average(a,weights=v)对数组a以权重v进行加权平均
2.mean(a),max(a),min(a),middle(a),var(a),std(a)数组a的均值、最大值、最小值、中位数、方差、标准差
3.a.prod()数组a的所有元素的乘积
4.a.cumprod()数组a的元素的累积乘积
5.cov(a,b),corrcoef(a,b)数组a和b的协方差、相关系数
6.a.diagonal()查看矩阵a对角线上的元素7.a.trace()计算矩阵a的迹,即对角线元素之和
以上就是numpy中的常见函数 。更多Python学习推荐:PyThon学习网教学中心 。
np.std在python中的意思std()函数就是初高中学的标准差 numpy.std()
求标准差的时候默认是除以 n 的,即是有偏的,np.std无偏样本标准差方式为加入参数 ddof = 1
python编程统计列表中各数据的方差和标准差请编写主函数和计算方差的函数var 。(不能引用库里)def fangcha(): a=float(raw_input("请输入a:")) b=float(raw_input("请输入b:")) c=float(raw_input("请输入C:")) d=(a b c)/3.0 e=((a-d)**2 (b-d)**2 (c-d)**2)/3.0 print "平均数是:%f方差是:%f" %(d,e) fangcha() Python2.7可用
2 如何用Python进行数据计算numpy计算平均数 标准差 相关系数等基本知识
NumPy 是python 语言的一个第三方库,其支持大量高维度数组与矩阵运算 。此外,NumPy 也针对数组运算提供大量的数学函数 。
#导入Numpy库,并命名为np
import numpy as np
#创建一维数组
a = np.array([1, 2, 3])
# NumPy可以很方便地创建连续数组 , 比如我使用arange或linspace函数进行创建:
b = np.arange(1,5,1) // 返回一个有终点和起点、固定步长的排列,如起点是1,终点是4,步长为1,即【1,2,3,4】,
c = np.linspace(1,9,5) 返回一个有终点和起点、元素个数的的排列,如起点是1,终点是9,元素个数为5,即【1,3,5,7,9】
#通过NumPy可以自由地创建等差数组,同时也可以进行加、减、乘、除、求n次方和取余数 。
求和:np.sum(a)
求取平均值:np.mean(a)
求取中位数:np.median(a)
求取加权平均数:np.average(a)
求取方差:var() np.var(a)
求取最小值:np.amin(a)
求取最大值:np.amax(a)
将两个数相加:np.add(x1, x2)
将两个数相减:np.subtract(x1, x2)
将两个数相乘:np.multiply(x1, x2)
将两个数相除:np.divide(x1, x2)
立方:np.power(x1, x2)
【python标准差函数 python求标准差不用numpy】 除余:np.remainder(x1, x2)
相关系数计算:np.corrcoef(a1, a2) (a1、a2都是矩阵)
python标准差函数的介绍就聊到这里吧,感谢你花时间阅读本站内容 , 更多关于python求标准差不用numpy、python标准差函数的信息别忘了在本站进行查找喔 。
推荐阅读
- 古典角色扮演游戏推荐,角色扮演古代游戏大全
- mac检查mysql安装成功,检验mysql是否安装成功是不允许用访问
- chinacdwordpress变装,2019中国变装皇后大赛评委
- 无人机开直播画面不清晰,无人机现场直播的方法
- c语言函数控制语句 c语言控制程序
- quartzmysql索引,mssql索引
- 哈尔滨拍什么视频好,哈尔滨拍什么视频好卖
- sqlserver2008没有维护计划,sqlserver2016维护计划
- linux分比率命令 linux 分辨率文件