Python实现统计推断-T检验、F检验、卡方检验

在SPSS软件内可以实现对表中数据的统计推断,为了实现同样类似的操作,我们可以使用Python复现SPSS中的部分功能,实现简单的数据统计推断功能。

什么是T检验?

       t检验又称学生t检验(student’s t-test),是统计推断的最基本方法。利用t分布理论,研究两组均数之间是否存在显著性差异。

t 检验要解决什么问题?

  • 如何判断药物的疗效?
  • 青少年身高、体重发展是否符合规律?
  • 近视是否在不同年级之间的比例是一致的?
  • 手术前后病人的生理指标是否有差异?
  • 保健品的含量是否与标称值一样?

t检验的适用条件

       适用条件:小样本数据的分析,且数据分布需要服从正态或者近似正态分布,已知总体和样本均值。包括:单样本t检验、独立样本t检验配对样本t检验。数据类型:定量数据(因变量Y),定性数据(自变量X

正态分布

       正态分布又称常态分布,高斯分布。正态曲线呈钟型,两头低,中间高,左右对称因其曲线呈钟形,因此人们又经常称之为钟形曲线。若随机变量X服从一个数学期望(均值)为μ、方差为σ2的正态分布,记为N(μ,σ2)。其概率密度函数为正态分布的期望值μ决定了其位置,其标准差σ决定了分布的幅度。当μ = 0,σ = 1时的正态分布是标准正态分布。

 t分布

t 分布:根据小样本来估计呈正态分布且方差未知的总体的均值,已知总体和样本均值。以0为中心,左右对称的单峰分布。t 分布曲线与样本数量N(自由度df)密切相关。df越小,曲线越低平;df越大,曲线越高陡;当自由度df=∞时,曲线为标准正态分布。

t检验分布表

利用Python进行t检验

界面效果如下:

最终输出结果为表格,结果如下:

界面由PyQt5设计完成

部分代码如下:

 #获取置信度
        def get_confidence_entry_item(self):
            try:
                confidence_entry = self.lineEdit_confidence_entry.text()
                confidence_entry = float(confidence_entry)
                return confidence_entry
            except Exception as e:
                # 处理异常
                print("请输入正确置信度:", str(e))

        #获取检测值
        def get_inspection_item(self):
            try:
                inspection_entry = self.lineEdit_inspect.text()
                inspection_entry = float(inspection_entry)
                return inspection_entry
            except Exception as e:
                # 处理异常
                print("请输入正确检验值:", str(e))

        #分类选择值
        def classfication_choose(self):
            global classfication_value
            search_text = " = ?"
            choose_items = self.listView_classfication_choose.selectedItems()
            for item in choose_items:
                replace_text = " = " + item.text()
                classfication_value = item.text()
            for index in range(self.listView_classfication.count()):
                item = self.listView_classfication.item(index)
                item_text = item.text()
                if item_text.endswith(search_text):
                    new_text = item_text[:-len(search_text)] + replace_text
                    item.setText(new_text)
                    break
            self.listView_classfication_choose.clear()

完整代码可以在我的Github中获取。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
要在Python实现最新的数据显著性检验,你可以使用一些统计库和方法。以下是一些常用的数据显著性检验方法示例: 1. 学生t检验: 学生t检验用于比较两组样本的均值是否有显著差异。在Python中,你可以使用`scipy.stats.ttest_ind`函数进行学生t检验。以下是一个简单的示例代码: ```python from scipy import stats # 两组样本数据 data1 = [1, 2, 3, 4, 5] data2 = [6, 7, 8, 9, 10] # 执行学生t检验 t_statistic, p_value = stats.ttest_ind(data1, data2) print("T-statistic:", t_statistic) print("P-value:", p_value) ``` 2. 方差分析(ANOVA): 方差分析用于比较三个或多个样本组之间的均值是否有显著差异。在Python中,你可以使用`scipy.stats.f_oneway`函数进行方差分析。以下是一个简单的示例代码: ```python from scipy import stats # 多组样本数据 group1 = [1, 2, 3, 4, 5] group2 = [6, 7, 8, 9, 10] group3 = [11, 12, 13, 14, 15] # 执行方差分析 f_statistic, p_value = stats.f_oneway(group1, group2, group3) print("F-statistic:", f_statistic) print("P-value:", p_value) ``` 3. 卡方检验卡方检验用于比较两个分类变量之间的关联性是否显著。在Python中,你可以使用`scipy.stats.chisquare`函数进行卡方检验。以下是一个简单的示例代码: ```python from scipy import stats # 观察频数 observed = [10, 20, 30] # 期望频数(假设独立) expected = [15, 15, 20] # 执行卡方检验 chi_statistic, p_value = stats.chisquare(observed, expected) print("Chi-square statistic:", chi_statistic) print("P-value:", p_value) ``` 这些方法只是常见的数据显著性检验方法的示例。根据你的具体问题和数据类型,你可能需要使用其他适合的方法。此外,确保在使用这些方法前,理解其假设条件,并根据你的数据和问题进行适当的前提检验和数据处理。

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值