1. pdist、squareform

计算样本集的样本间距离矩阵,一对好基友(常同时出现,squareform 的参数就是 pdist 的返回值,没有取平方的意思,只是将 pdist 返回的一维形式,拓展为方阵)

from scipy.spatial.distance pdist, squareform
sq_dists = pdist(X, metric='sqeuclidean')# X.shape = (n_samples, n_features)# sq_dists.shape = ((1+n-1)*(n-1)/2, ),是一个一维向量mat_sq_dists = squareform(sq_dists)# mat_sq_dists.shape = (n_samples, n_samples)# 主对角线元素为0,是一个对称矩阵,# 从 pdist 转化而来;

2. 阶乘与排列组合数

from scipy.special import comb# 排列数
from scipy.special import perm# 组合from scipy.misc import factorial# 阶乘# 返回为numpy.ndarray# 自然它可接受多个数,分别计算其阶乘
>>> comb(10, 2)# 45.0
>>> factorial(10)
array(3628800.0)>>> factorial([1, 2, 3, 4, 5])
array([   1.,    2.,    6.,   24.,  120.])## integrate:积分

注:scipy.misc也有combfactoral,但没有perm

3. 积分

from scipy import integrate

尤其是integrate.quad可用来计算定积分,进而计算 CDF(cumulative density function),

如 Gamma 分布的概率密度函数为:

Gamma(x|α,β)=βαxα−1e−βxΓ(α)

Gamma(x|\alpha,\beta)=\frac{\beta^{\alpha}x^{\alpha-1}e^{-\beta x}}{\Gamma(\alpha)}

from scipy.special import gamma
def gamma_pdf(x, alpha, beta):return beta**alpha*x**(alpha-1)*np.exp(-beta*x)/gamma(alpha)
def gamma_cdf(x, alpha, beta):return [integrate.quad(gamma_pdf, 0, t, args=(alpha, beta)) for t in x]
def main():params = [(1, 2), (2, 2), (3, 2), (5, 1), (9, .5), (7.5, 1), (0.5, 1.)]x = np.arange(0.01, 20, .01)plt.figure()for alpha, beta in params:plt.plot(x, gamma_pdf(x, alpha, 1/beta), label=r'$\alpha={:.1f},\beta={:.1f}$'.format(alpha, beta), lw=2)plt.legend(loc='best', frameon=False)plt.show()plt.figure()for alpha, beta in params:plt.plot(x, gamma_cdf(x, alpha, beta), label=r'$\alpha={:.1f},\beta={:.1f}$'.format(alpha, beta), lw=2)plt.legend(loc='best', frameon=False)plt.show()
if __name__ == '__main__':main()

scipy 常用函数(special, spatial.distance, integrate)相关推荐

  1. scipy常用函数(更新中)

    from scipy.optimize import fsolve def f(x):    #定义要求解的方程组     x1 = x[0]     x2 = x[1]     return [2* ...

  2. scipy.spatial.distance.cdist函数

    语法:scipy.spatial.distance.cdist(XA, XB, metric='euclidean', p=None, V=None, VI=None, w=None) 该函数计算两个 ...

  3. python scipy.stats.norm.cdf_python的scipy.stats模块中正态分布常用函数总结

    python的scipy.stats模块是连续型随机变量的公共方法,可以产生随机数,通常是以正态分布作为scipy.stats的基本使用方法.本文介绍正态分布的两种常用函数:1.累积概率密度函数sta ...

  4. scipy.spatial.distance.cdist

    语法:scipy.spatial.distance.cdist(XA, XB, metric='euclidean', p=None, V=None, VI=None, w=None),该函数用于计算 ...

  5. scipy.spatial.distance 与 sklearn cosine_similarity

    1.scipy.spatial.distance from scipy.spatial.distance import pdist,squareform a=[1,1,1] b=[1,1,2] c=[ ...

  6. scipy.spatial.distance 与 sklearn cosine_similarity;计算cosine相似度距离,scipy pdist 结果转化成array方阵

    1.scipy.spatial.distance from scipy.spatial.distance import pdist,squareform a=[1,1,1] b=[1,1,2] c=[ ...

  7. python数据分析 - numpy | ndarray数组 | numpy常用函数

    文章目录 数据分析 numpy概述 numpy历史 numpy的核心:多维数组 numpy基础 ndarray数组 内存中的ndarray对象 ndarray数组对象的特点 ndarray数组对象的创 ...

  8. 数据分析之numpy基础/matplotlib绘图/numpy常用函数/杂项功能

    文章目录 数据分析 numpy概述 numpy`历史` numpy的核心:多维数组 numpy基础 ndarray数组 内存中的ndarray对象 ndarray数组对象的特点 ndarray数组对象 ...

  9. Kaggle常用函数总结 原创 2017年07月03日 21:47:34 标签: kaggle 493 kaggle比赛也参加了好几次,在这里就把自己在做比赛中用到的函数汇总到这,方便自己以后查阅

    Kaggle常用函数总结 原创 2017年07月03日 21:47:34 标签: kaggle / 493 编辑 删除 kaggle比赛也参加了好几次,在这里就把自己在做比赛中用到的函数汇总到这,方便 ...

最新文章

  1. 右键脚本html,js实现右键自定义菜单
  2. 面试常考,项目易错,长文详解C/C++中的字节对齐
  3. QGraphicsScene 的简单理解--关于手册的简要翻译
  4. Silverlight中开发和设计人员的合作文档信息
  5. MySQL(介绍,安装,密码操作,权限表)
  6. LeetCode 826. 安排工作以达到最大收益(map)
  7. springboot整合activiti报错[processes/]不存在解决方案
  8. 优酷宠爱剧场发布新片单 包括近30部待播精品剧
  9. OpenSLR 中国镜像背后的数据存储服务商,原来是这样一家公司!
  10. python写界面c这算法_OpenCV算法精解:基于Python与C.pdf
  11. MySQL调用存储过程和函数
  12. 整理了一些常用的软件测试工具【建议收藏】
  13. Mini MP3 Player播放器简介与STC12例程
  14. 最快路由器服务器地址,路由器中radius服务器IP地址要用什么样的IP
  15. 固定定位相对于当前父元素
  16. Gzip的动态压缩和静态压缩详解
  17. 华为早几年的服务器型号,云服务器一般用几年
  18. Python开发【Django】:组合搜索、JSONP、XSS过滤
  19. word文档中设置的行距一样但实际显示的不一样
  20. java获取小程序中用户的unionId的三种方式

热门文章

  1. Hive insert into小文件问题优化解决
  2. 详解:Spark程序的开始 SparkContext 源码走一走
  3. c语言最新标准 2017,2017最新C语言介绍
  4. java redis jar_Java使用Redis
  5. 频谱仪使用方法图解_安全继电器工作原理、接线图、使用方法图解
  6. 类和对象编程(七):this指针
  7. tf.transpose()个人理解,高纬度的变换,可以将部分维度看成黑盒(整体)
  8. 单例设计模式之间的区别
  9. [Swift]LeetCode85. 最大矩形 | Maximal Rectangle
  10. javascript基础知识(13) Date