假设检验2

2023-11-12

为研究东、中、西部各省市规模以上的企业发展状况,我们收集了各城市企业的主要经济指标,包括:总资产贡献率、资产负债率、流动资产周转次数、工业成本费用利润率、产品销售率。我们用变量“类别”定义了各类城市,其中1为东部城市;2为中部城市;3为西部城市。数据文件为homework2.xlsx。假设显著性水平为 α = 0.01 \alpha=0.01 α=0.01,问:

1. 对三个类别的城市进行均值向量间的两两比较,查看结果

加载必要的包

import numpy as np
import pandas as pd
from scipy import stats
import matplotlib.pyplot as plt
from IPython.display import display
data=pd.read_excel('./homework2.xls')
data.head()

在这里插入图片描述

group_1=data[data['类别']==1].drop(['类别','地区'],axis=1) # 去除地区、类别标签列,只保留数值列
group_2=data[data['类别']==2].drop(['类别','地区'],axis=1) # 去除地区、类别标签列,只保留数值列
group_3=data[data['类别']==3].drop(['类别','地区'],axis=1) # 去除地区、类别标签列,只保留数值列
group_1.head()

在这里插入图片描述

def multi_unparied_data(group1:pd.DataFrame,group2:pd.DataFrame,confidence=0.05):
    # 计算检验统计量
    n1=len(group1)
    n2=len(group2)
    p=np.shape(group1)[1] # 变量维度
    mean1=np.mean(group1).values.T
    mean2=np.mean(group2).values.T
    S1=np.cov(group1.T)
    S2=np.cov(group2.T)
    Sp=((n1-1)*S1+(n2-1)*S2)/(n1+n2-2)
    T2=n1*n2*(mean1-mean2).T@np.linalg.inv(Sp)@(mean1-mean2)/(n1+n2)
    Test_statistics=(n1+n2-p-1)*T2/(p*(n1+n2-2))

    # 计算p值
    from scipy.stats import f

    pvalue=f.sf(Test_statistics,p,n1+n2-p-1)

    # 比较p值与显著性水平
    if pvalue<confidence:
        print('在显著性水平{0:}下,两组样本所在总体的均值向量不相等。(p={1:.4f})'.format(confidence,pvalue))
    else:
        print('在显著性水平{0:}下,两组样本所在总体的均值向量相等。(p={1:.4f})'.format(confidence,pvalue))
    return pvalue
multi_unparied_data(group_1,group_2)

在显著性水平0.05下,两组样本所在总体的均值向量相等。(p=0.2793)

multi_unparied_data(group_1,group_3)

在显著性水平0.05下,两组样本所在总体的均值向量不相等。(p=0.0097)

multi_unparied_data(group_2,group_3)

在显著性水平0.05下,两组样本所在总体的均值向量不相等。(p=0.0470)

2. 对三个类别的城市同时进行均值向量间的比较,查看结果

from statsmodels.multivariate.manova import MANOVA

model=MANOVA.from_formula(' 总资产贡献率 + 资产负债率 + 流动资产周转次数 + 工业成本费用利润率 + 产品销售率 ~ 类别', data=data).mv_test()
# 在''中填入公式,其中~左侧填入自变量名称,~右侧填入因素名称
print(model.results['类别']['stat'])

在这里插入图片描述

3. 承接问题2,你认为哪些变量导致了三个类别城市均值向量的差异?说出你的理由。

print(stats.f_oneway(group_1.总资产贡献率.values,group_2.总资产贡献率.values,group_3.总资产贡献率.values))
print(stats.f_oneway(group_1.资产负债率.values,group_2.资产负债率.values,group_3.资产负债率.values))
print(stats.f_oneway(group_1.流动资产周转次数.values,group_2.流动资产周转次数.values,group_3.流动资产周转次数.values))
print(stats.f_oneway(group_1.工业成本费用利润率.values,group_2.工业成本费用利润率.values,group_3.工业成本费用利润率.values))
print(stats.f_oneway(group_1.产品销售率.values,group_2.产品销售率.values,group_3.产品销售率.values))

在这里插入图片描述

model=MANOVA.from_formula(' 总资产贡献率 + 资产负债率 + 工业成本费用利润率 + 产品销售率 ~ 类别', data=data).mv_test()
print(model.results['类别']['stat'])

在这里插入图片描述

model=MANOVA.from_formula(' 总资产贡献率 + 资产负债率 + 工业成本费用利润率 ~ 类别', data=data).mv_test()
print(model.results['类别']['stat'])

在这里插入图片描述

model=MANOVA.from_formula('资产负债率 + 工业成本费用利润率 ~ 类别', data=data).mv_test()
print(model.results['类别']['stat'])

在这里插入图片描述
流动资产周转次数、产品销售率导致了三个类别城市均值向量的差异。

感谢 Datawhale 对开源学习的贡献!

感谢 Git-Model 创作团队!

参考文献:

Modeling-Universe/Data-Story/Task7_下_假设检验2_多元数值向量检验/假设检验2-多元数值向量的检验.ipynb

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

假设检验2 的相关文章

随机推荐

  • 我 JS 写的好好的,为什么要用那么复杂的 TS

    今年前端面试有个很有意思的现象 最经典的 JavaScript 基础类面试题 不在被面试官宠幸 原因很简单 现在市场经济收紧 公司的项目决策中往往切割掉了边角试错成本 而 TypeScript 无疑更适合构建大项目和管理 就像 Java 和
  • 彻底理解embedding

    本文转载自https blog csdn net weixin 42078618 article details 84553940 版权问题请联系博主删除 首先 我们有一个one hot编码的概念 假设 我们中文 一共只有10个字 只是假设
  • 毕业设计记录-Pytorch学习-自己手写数字识别

    今天用之前的模型训练手写数字数据集 训练了50轮 效果如下 然后我就准备用自己手写的数字来检验看看 模型的准确率 自己找的一些数字图片 但是经过测试全部预测成3 很不解 搞了好几个小时 到最后无意间看到他的数据集的时候才知道哪出了问题 这是
  • Linux网络服务部署yum仓库

    目录 1 Yum概述 2 Yum实现过程 3 Yum配置文件 3 1yum主配置文件 etc yum conf 3 2仓库设置文件 etc yum repos d repo 4 yum命令详解 5 源地址 6 搭建仓库的方式 6 1搭建本地
  • MVC,MVP和MVVM架构解析

    文章目录 关于架构 框架和设计模式三者的说明 一 MVC 1 概念 2 结构 3 模式 4 优缺点 5 适用场景 二 MVP 1 概念 2 结构 3 与MVC对比 4 优缺点 5 适用场景 三 MVVM 1 结构 2 解析 3 MVVM架构
  • Java内存区域与内存溢出异常

    Java内存区域与内存溢出异常 如上图所示 首先java源代码文件 java后缀 会被java编译器编译为字节码文件 class后缀 然后再让类加载器加载各个类的字节码文件 加载完毕后 交由JVM执行引擎执行 在整个执行过程中 JVM会用一
  • spdlog日志库说明文档(超详细)

    spdlog日志库说明文档 超详细 spdlog是一个开源 快速 只有头文件的C 11日志库 code地址在https github com gabime spdlog 基础示例在https github com gabime spdlog
  • 技术点集(面试)

    怎么使用 ConcurrentHashMap 才能是线程安全的 package util import java util Map import java util concurrent ConcurrentHashMap public c
  • java session id 生成_Java通过sessionId获取Session

    Servlet2 1之后不支持SessionContext里面getSession String id 方法 但是 我们可以通过HttpSessionListener监听器和全局静态map自己实现一个SessionContext MySes
  • 我说CMMI

    一 我说CMMI之二 CMMI里有什么 CMMI划分为三个分支 适用于供方 乙方的模型 CMMI DEV 主要是针对开发类组织的 CMMI SVC 主要是针对服务类组织的 适用于需方 甲方的模型 CMMI ACQ 主要是针对采购类组织的 C
  • 排查 Linux cup 飙升问题

    提示 文章写完后 目录可以自动生成 如何生成可参考右边的帮助文档 文章目录 前言 Java 执行过程 一 使用 top 命令 二 使用ps命令查看cpu占比高的PID 三 将对应的TID转换为16进制 四 使用jdk自带的命令jstack
  • 使用ffmpeg解析H265视频编码

    使用 ffmpeg 解析 H265 视频编码的方法如下 下载并安装 ffmpeg 如果您的计算机上已经安装了 ffmpeg 则可以跳过此步骤 打开命令行窗口 Windows 用户可以在开始菜单中搜索 命令提示符 输入以下命令来解析 H265
  • it项目管理(6)

    1 教材练习题6 a b 路径1 A B E H K 长度 2 2 2 2 2 10 天 路径2 A B E I J K 长度 2 2 2 5 1 2 14 天 路径3 A C F H K 长度 2 3 3 2 2 12 天 路径4 A C
  • 如何用Python获取网页指定内容

    文章目录 1 抓取网页源代码 2 抓取一个网页源代码中的某标签内容 3 抓取多个网页子标签的内容 Python用做数据处理还是相当不错的 如果你想要做爬虫 Python是很好的选择 它有很多已经写好的类包 只要调用 即可完成很多复杂的功能
  • 服务器性能问题排查

    服务器性能问题一般有两种 高内存占用 高CPU占用 比如应用程序高内存占用 可能是因为文件读写 频繁的IO 内存频繁GC 进一步占用了内存和CPU 比如应用程序高CPU占用 可能是因为大任务计算 死循环 卡死 不断超时或者重试 所以需要具体
  • 基于SpringBoot开发的疫情信息管理系统

    文章目录 项目介绍 主要功能截图 部分代码展示 设计总结 项目获取方式 作者主页 超级无敌暴龙战士塔塔开 简介 Java领域优质创作者 简历模板 学习资料 面试题库 关注我 都给你 文末获取源码联系 项目介绍 疫情信息管理系统 java项目
  • 学习网络编程No.6【将服务器日志和守护进程化】

    引言 北京时间 2023 9 1 21 15 下午刚更新完博客 同理再接再厉 这样整天不需要干什么 除了玩手机的日子不多了 马上就要开学 每天需要签到签退的日子就要来临 烦躁 照我预料下学期我们学校应该会开一门Java的专业课 现在这种线下
  • ESP32-CAM摄像头开发

    1 硬件接线 参考博客 https blog csdn net wangyilong153 article details 124366728 ops request misc 257B 2522request 255Fid 2522 25
  • ply文件格式详细说明

    典型的 PLY 文件结构 头部 顶点列表 面片列表 其他元素列表 头部是一系列以回车结尾的文本行 用来描述文件的剩余部分 头部包含一个对每个元素类型的描述 包括元素名 如 边 这个元素在工程里有多少 以及一 个与这个元素关联的不同属性的列表
  • 假设检验2

    为研究东 中 西部各省市规模以上的企业发展状况 我们收集了各城市企业的主要经济指标 包括 总资产贡献率 资产负债率 流动资产周转次数 工业成本费用利润率 产品销售率 我们用变量 类别 定义了各类城市 其中1为东部城市 2为中部城市 3为西部