统计学(检验、分布)的 python(numpy/pandas/scipy) 实现

原创 2018年04月15日 21:26:02

1. t 检验:两个分布的差异

多维数据集的每一个属性列都可理解为一个特征的实例。两个分布的距离:每一个属性列代表的特征跟标签列之间的相关性。

t 检验用 t 分布理论来推论差异发生的概率,以比较两个分布的平均数之间的差异是否显著。主要用于样本含量小(n<30),总体标准差 σ 未知的正态分布。

独立样本 t 检验统计量如下计算:

t=X¯1X¯2S12n1+S22n2,Sx2=(xμ)2n1

尤其注意,这里的方差是无偏估计(np.std(x, ddof=1)

# 通过字典构造 DataFrame
data = {'Category': ['cat2', 'cat1', 'cat2', 'cat1', 
                     'cat2', 'cat1', 'cat2', 'cat1', 'cat1', 'cat1', 'cat2'],
        'values': [1, 2, 3, 1, 2, 3, 1, 2, 3, 5, 1]}

data_df = DataFrame(data)
# 计算各自的均值
>> data_df.groupby('Category').mean()
cat1      2.666667
cat2      1.600000

cat1 = data_df[data_df['Category'] == 'cat1']
    # data_df.Category == 'cat1'
cat2 = data_df[data_df['Category'] == 'cat2']

from scipy.stats import ttest_ind
# 计算二者的 t 检验统计量,及对应的 p-value
>> ttest_ind(cat1['values'], cat2['values'])
Ttest_indResult(statistic=1.4927289925706944, pvalue=0.16970867501294376)
  • scipy 下的 t-test 计算方法

    def t_test(x1, x2):
        n1, n2 = x1.size, x2.size
        mu1, mu2 = np.mean(x1), np.mean(x2)
        s1, s2 = np.std(x1, ddof=1), np.std(x2, ddof=1)
        num = np.abs(mu1 - mu2)
        denom = np.sqrt((((n1-1)*s1**2 + (n2-1)*s2**2)/(n1+n2-2))*(1/n1+1/n2))
        with np.errstate(divide='ignore'):
            return num / denom
版权声明:本文为博主原创文章,未经博主允许不得转载。 https://blog.csdn.net/lanchunhui/article/details/79953528

利用python进行T检验

利用python进行t检验
  • m0_37777649
  • m0_37777649
  • 2017年07月11日 00:35
  • 1158

numpy、scipy、pandas、matplotlib了解

1.numpy——基础,以矩阵为基础的数学计算模块,纯数学 存储和处理大型矩阵。 这个是很基础的扩展,其余的扩展都是以此为基础。 快速学习入口 https://docs.scipy.org/do...
  • u013317445
  • u013317445
  • 2017年05月14日 22:38
  • 947

NumPy、SciPy和Pandas

NumPy和SciPy都是开源的函数库,由于python中是没有数组这个数据类型的,所以涉及到数学计算时会变的非常吃力。Numpy和Scipy正好帮我们解决了这个难题。   Numpy是python...
  • u012654283
  • u012654283
  • 2015年05月05日 23:07
  • 735

python Numpy,SciPy,MatplotLib,pandas安装流程

python Numpy,SciPy,MatplotLib,pandas安装流程
  • love072422
  • love072422
  • 2017年03月28日 10:09
  • 399

numpy,scipy,matplotlib,pandas等简明教程

numpy中文文档(updating…) numpy,scipy,matplotlib,pandas,keras,scikit-learn简明实例教程 基础部分 numpy的主要对象是一个同类...
  • Recall_Tomorrow
  • Recall_Tomorrow
  • 2017年09月17日 20:27
  • 322

安装pip,numpy,scipy,pandas,scikit-learn包的步骤

python貌似不支持第三方包.exe文件的安装了,尝试了一下可以用pip + .whl 来安装第三方包。 针对没有pip安装经验的小白(比如我自己): 1. 首先在官网https://pip.pyp...
  • mysixgod
  • mysixgod
  • 2016年11月07日 21:24
  • 1577

Python机器学习Numpy, Scipy, Pandas, Scikit-learn, Matplotlib, Keras, NN速查手册

Numpy SciPy Scikit-Learn Pandas Keras Matplotlib Neural Network Zoo 图片来源 http://www....
  • chenhaifeng2016
  • chenhaifeng2016
  • 2017年06月02日 10:57
  • 1242

numpy,scipy,pandas 和 matplotlib

本文会介绍numpy,scipy,pandas 和 matplotlib 的安装,环境为Windows10。 一般情况下,如果安装了Python的包管理器pip,很多模块可以简单地使用pip inst...
  • altland
  • altland
  • 2017年02月17日 11:35
  • 619

常用数据分析库Numpy、Scipy、Pandas 、matplotlib和nltk、igraph、Scikit-learn 简介

Numpy功能:提供常用的数值数组、矩阵等函数 优点:是基于向量化的运算; 进行数组运算时Numpy数组比list效率高示例:Scipy功能: 是一种使用NumPy来做高等数学、信号处理、 优化、统计...
  • YEN_CSDN
  • YEN_CSDN
  • 2017年02月15日 17:17
  • 1091

Python 之 安装 scipy,numpy,matplotlib,pandas

由于安装EPD free 出现问题,于是采用曲线救国的方法。
  • VIP_WangSai
  • VIP_WangSai
  • 2016年08月20日 15:22
  • 773
收藏助手
不良信息举报
您举报文章:统计学(检验、分布)的 python(numpy/pandas/scipy) 实现
举报原因:
原因补充:

(最多只允许输入30个字)