scipy.stats统计库函数

常见通用函数

  1. pdf:概率密度函数
  2. cdf:累积分布函数,已知x位置求累计概率
  3. ppf:分位点函数,已知累计概率求x位置(cdf的逆函数)
  4. norm:正态分布
  5. poisson:泊松分布
  6. uniform:均匀分布
  7. t:T分布

求平均值的标准误差(SEM)

import scipy as sp
import scipy.stats
import numpy as np
arr=[1,2,3,4,5]
sem=scipy.stats.sem(arr)

SEM详解见:SEM

实例:求置信区间临界点

先验知识
  1. t分布
    在概率论和统计学中,t-分布(t-distribution)用于根据小样本来估计呈正态分布且方差未知的总体的均值。如果总体方差已知(例如在样本数量足够多时),则应该用正态分布来估计总体均值。
    t分布曲线形态与n(确切地说与自由度df)大小有关。与标准正态分布曲线相比,自由度df越小,t分布曲线愈平坦,曲线中间愈低,曲线双侧尾部翘得愈高;自由度df愈大,t分布曲线愈接近正态分布曲线,当自由度df=∞时,t分布曲线为标准正态分布曲线。

  2. 置信区间
    在这里插入图片描述
    其中,1.96即置信度=0.95时,右端分位点的位置(针对标准正态分布时)。

arr=np.randn(100)  # 初始化数组作为样本集
confidence = 0.95  # 置信度
# 计算平均值的标准误差
sem=scipy.stats.sem(arr)
n = len(arr)
# t.ppf参数:分位点p,自由度df
# ppf根据分位点和自由度(样本数量-1),求出分位点所在位置x;
# x*sem得到该样本集的置信区间的右端点
h = sem * sp.stats.t.ppf((1+confidence)/2., n-1)
# 或写成:h = sem * sp.stats.t.ppf( 1-(1-confidence)/2., n-1)

参考:
如何理解 95% 置信区间? - 马同学的回答 - 知乎
https://www.zhihu.com/question/26419030/answer/274472266

https://baike.baidu.com/item/t%E5%88%86%E5%B8%83/299142?fr=aladdin

scipy.stats里的统计量与分布简介

  • 1
    点赞
  • 21
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
### 回答1: 我了解Scipy.stats,它是一个用于统计计算的Python模块。 你好!Scipy.stats 是一个 Python 库,提供了大量用于数据分析、概率计算和统计分布的函数和类。Python Scipy.stats 是一个用于科学计算和统计分析的 Python 库。它提供了大量用于数据探索、描述性统计、概率分布和假设检验等的函数。 Scipy.stats 中包含了多种概率分布函数,包括连续型分布(如正态分布、指数分布和威布尔分布等)和离散型分布(如泊松分布和二项分布等)。此外,它还提供了许多统计函数,如假设检验、相关分析、方差分析等。 下面是一些 Scipy.stats 常用函数的示例: 1. 正态分布 ```python from scipy.stats import norm # 计算正态分布概率密度函数在 x=1 处的取值 norm.pdf(1) # 计算正态分布累积分布函数在 x=1 处的取值 norm.cdf(1) # 计算给定正态分布的均值和标准差时,从 -1 到 1 区间的概率密度函数值 norm.interval(0.68, loc=0, scale=1) ``` 2. t 分布 ```python from scipy.stats import t # 计算给定 t 分布的自由度,从 -1 到 1 区间的概率密度函数值 t.interval(0.68, df=10, loc=0, scale=1) # 计算两个样本的 t 统计值和 p 值,用于假设检验 ttest_ind(sample1, sample2) ``` 3. 卡方分布 ```python from scipy.stats import chi2 # 计算给定卡方分布的自由度,从 0 到 2 区间的概率密度函数值 chi2.interval(0.68, df=5, loc=0, scale=1) # 计算卡方分布的 p 值,用于假设检验 chisquare(observed, expected) ``` 以上是 Scipy.stats 库的一些常用函数。你可以通过调用这些函数和查看其文档来进一步了解该库的使用。 ### 回答2: Python是一种广泛使用的编程语言,而Python scipy.stats是Python中的一个统计学模块。它是一个极其强大的模块,用于执行各种统计和概率分布操作。这个模块是SciPy库的一部分,SciPy是一个Python库,专门用于数学、科学和工程计算。 Python scipy.stats可以用于在Python中生成各种概率分布,如正态分布、泊松分布、二项分布、t分布等等。使用它可以计算每个概率分布的概率密度、累积分布函数和逆累积分布函数。 除了概率分布之外,Python scipy.stats还提供了各种统计测量功能,例如Kendall的Tau系数、Spearman的等级相关系数、Pearson的相关系数、均值、中位数、标准差等。还可以使用Python scipy.stats来进行假设检验,例如单样本和双样本t检验、卡方检验等等。 Python scipy.stats还提供了一些有用的函数,如峰度(kurtosis)、偏态(skewness)、最大值、最小值和极差。将这些函数与概率分布和统计测量相关函数相结合,可以在Python中快速完成高级统计分析操作。 总的来说,Python scipy.stats对于希望利用Python进行统计分析的科学家和工程师来说是非常有用的。它提供了方便、快速和高效的数据分析工具,使得研究人员可以更简单、更迅速地实现各种复杂的统计分析操作。 ### 回答3: Python的Scipy库提供了许多统计函数,其中最重要的是scipy.stats模块。在统计学和数据科学中,scipy.stats被广泛用于概率分布的计算、分位数的计算、假设检验、线性回归、方差分析等。 该模块提供了多种分布概率密度函数的计算。例如,正态分布(norm)、t分布(t)、卡方分布(chi2)、F分布(f)、伽马分布(gamma)等。对于每种分布,该模块提供了一个或多个方法计算概率密度函数、累积分布函数、分位数等。除此之外,还有如半正态分布、冈分布、三角分布等其它分布概率密度函数的计算。 与此同时,该模块还可用于执行假设检验。例如,在从正态分布中取样时,可以使用t检验测试样本和总体的均值是否不同。还可以使用方差分析(ANOVA)来比较不同组的平均值是否有差异。 scipy.stats模块还提供了一些关于线性回归的函数,例如pearsonr和spearmanr方法可以计算线性相关系数和斯皮尔曼等级相关系数。还可以使用linregress方法进行回归分析,包括计算斜率、截距、标准错误、t值和p值。 总的来说,scipy.stats是Python科学计算的重要组成部分,对于数据科学家、研究人员等人员来说非常有用,可以方便地计算和分析各种数据分布和假设检验,并且提供了一些常见的统计函数来解决数据问题。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值