如何在 Python 中进行 F 检验来比较嵌套线性模型?

2024-03-19

我想比较两个嵌套线性模型,将它们称为 m01 和 m02,其中 m01 是简化模型,m02 是完整模型。我想做一个简单的 F 检验,看看完整模型是否比简化模型增加了显着的效用。

这在 R 中非常简单。例如:

mtcars <- read.csv("https://raw.githubusercontent.com/focods/WonderfulML/master/data/mtcars.csv")
m01 <- lm(mpg ~ am + wt, mtcars)
m02 <- lm(mpg ~ am + am:wt, mtcars)
anova(m01, m02)

给我以下输出:

这告诉我添加am: wt交互项显着改善了模型。有没有办法在 Python/sklearn/statsmodels 中做类似的事情?

Edit:我在看这个问题 https://stackoverflow.com/questions/45243802/how-do-i-do-an-f-test-to-compare-nested-linear-models-in-python在发布这个之前,无法弄清楚它们是如何相同的。另一个问题是对两个向量进行 F 检验。这个问题是关于比较 2 个嵌套线性模型。

我想这就是我需要的:

http://scikit-learn.org/stable/modules/ generated/sklearn.feature_selection.f_regression.html#sklearn.feature_selection.f_regression http://scikit-learn.org/stable/modules/generated/sklearn.feature_selection.f_regression.html#sklearn.feature_selection.f_regression

但我不确定到底要传递什么函数。如果有人可以提供或指出一个例子,那将非常有帮助。


通过以下方式调整 Jeremy 的答案使我能够得到与在 R 中获得的相同结果:

import pandas as pd
from statsmodels.formula.api import ols
from statsmodels.stats.anova import anova_lm

cars_df = pd.read_csv("https://raw.githubusercontent.com/focods/WonderfulML/master/data/mtcars.csv")
m01 = ols('mpg ~ am + wt', data=cars_df).fit()
m02 = ols('mpg ~ am + wt + am:wt', data=cars_df).fit()
anovaResults = anova_lm(m01, m02)
print(anovaResults)

这在我的 jupyter 笔记本中给出了以下结果:

我还遇到了这些相当神秘的错误:

任何人都知道是什么产生了这些错误?

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

如何在 Python 中进行 F 检验来比较嵌套线性模型? 的相关文章

  • 使用 Python 或 Django 处理收到的电子邮件?

    我了解如何通过 Django 发送电子邮件 但我希望用户能够回复电子邮件 如果他们发送 以及我收到 的电子邮件包含与某个字符串匹配的消息 我将调用一个函数 我已经做了一些谷歌搜索 但除了自己制作脚本之外似乎没有什么好的解决方案 如果有什么东
  • 如何在后台运行python程序以保持活动窗口相同

    我编写了一个程序 可以将前景窗口更改为显示器尺寸的 85 并且要成功运行 前景窗口需要保持不变 我已将 python 脚本 pyw 放入批处理文件 运行 pythonw 并在桌面上创建了批处理文件的快捷方式 并提供了快速运行它的快捷方式 我
  • 无法在 python 中导入名称 GoogleMaps

    我使用下面的代码来获取地址的纬度和经度 from googlemaps import GoogleMaps gmaps GoogleMaps api key address Constitution Ave NW 10th St NW Wa
  • Python3 http.server:将日志保存到文件中

    我使用Python3 6编写了一个简单的HTTP服务器来重定向所有请求 我写的文件可以找到here https github com kmahyyg learn py3 blob master antiscanhttp py 我可以在 Ub
  • 如何阻止 Django 中发生级联删除?

    我的 Django 应用程序中有三个模型类 class Folder models Model folder models ForeignKey Folder null True blank True related name folder
  • Spark问题中读取大文件 - python

    我已经使用 python 在本地安装了 Spark 并在运行以下代码时 data sc textFile C Users xxxx Desktop train csv data first 我收到以下错误 Py4JJavaError Tra
  • 当图例位于轴之外时选择 matplotlib 图例

    当我修改 legend picking py 示例时 我遇到了一个有趣的怪癖 其中图例位于轴之外 如下所示 leg ax legend loc upper left fancybox True shadow True leg ax lege
  • 动态添加jinja模板

    我有一个 jinja 模板 它是一组 div 标签内的唯一内容 div include temppage html div 当我按下按钮时 我想用其他内容替换标签之间的所有内容 我希望用另一个 jinja 模板 include realpa
  • 通过 SSH 的 Pygame 不注册击键(Raspberry Pi 3)

    所以我得到了 raspi 3 和简单的 8x8 LED 矩阵 在玩了一些之后 我决定用 pygame 的事件制作一个简单的蛇游戏 显示在该矩阵上 我之前没有 pygame 的经验 除了 LED 矩阵之外 没有连接任何屏幕 显示器 所以最初的
  • 在 pandas 数据框中按列应用 Seaborn 热图

    我试图在枢轴熊猫数据帧上使用seaborn的热图 就像在超链接中一样有效 df pd DataFrame np random randint 1 100 size 3 2 df columns A B df sns heatmap df a
  • 如何为 apscheduler 指定“记录器”

    我正在尝试学习如何使用 Python 的 apscheduler 包 但它会定期抛出以下错误 No handlers could be found for logger apscheduler scheduler 该消息似乎与计划作业中的错
  • 如何在海龟图形中将多个按键绑定在一起?

    我正在尝试制作一个连接点的 python 游戏 我希望游戏记录 2 次按钮按下操作 示例 如果用户按向上和向右箭头键 乌龟将向东北方向移动 45 度 这是我的代码 import turtle flynn turtle Turtle win
  • 如何在 Mac OS X 10.8 上安装 hg Convert 所需的 python subversion 绑定?

    我正在寻找一种解决方案 最好是干净且简单的 以启用hg convert使用 SVN 存储库在 OS X 10 8 上工作 目前 如果您尝试转换 SVN 存储库 您将得到一个could not load Subversion python b
  • 如何从分组数据创建直方图

    我正在尝试根据 pandas 中的分组数据创建直方图 到目前为止 我已经能够创建标准线图 但我不知道如何做同样的事情来获取直方图 条形图 我想获得泰坦尼克号事故中幸存者和未幸存者的 2 个年龄直方图 看看年龄分布是否存在差异 来源数据 ht
  • django REST框架多源领域

    假设我的 models py 中有这些 models py class Theme models Model An theme is an asset of multiple levels adventure models ForeignK
  • Python range() 和 zip() 对象类型

    我了解功能如何range and zip 可以在 for 循环中使用 然而我期望range 输出一个列表 很像seq在 Unix shell 中 如果我运行以下代码 a range 10 print a 输出是range 10 表明它不是一
  • 获取 pandas 中最后一次出现特定值之后的所有行

    我的数据框看起来像 ID colA 1 B 1 D 2 B 2 D 2 C 我已返回每组中事件 B 最后一次出现后的所有行 输出将是 ID colA 1 D 2 D 2 C 我试过 a df colA str contains B grou
  • 如何检索 SQLAlchemy 结果集的 python 列表? [复制]

    这个问题在这里已经有答案了 我有以下查询来检索单列数据 routes query select schema stop times c route number schema stop times c stop id stop id dis
  • 将文本文件转换为 plink PED 和 MAP 格式

    我有以下数据 其中的一小部分 名为 short2 pre snp tumor txt rs987435 C G 1 1 1 0 2 rs345783 C G 0 0 1 0 0 rs955894 G T 1 1 2 2 1 rs608879
  • Python中矩阵元素的双重求和

    基于下面的简化示例 我想在我的代码中 from sympy import import numpy as np init printing x y symbols x y mat Matrix x 1 1 y X 1 2 3 Y 10 20

随机推荐

  • 如何强制右对齐 UITextView 中的尾随空格?

    我有一个 UITextView 可以左对齐 右对齐或居中 我注意到 如果我右对齐 textView 则 textView 中任何文本行中的任何尾随空格都会被忽略 左对齐时 前导空格不会发生这种情况 从视觉上看 这就是发生的情况 用 来可视化
  • 规范化数组方法和返回值

    是否有任何 JavaScript 数组库可以规范化数组返回值和突变 我认为 JavaScript Array API 非常不一致 有些方法会改变数组 var A 0 1 2 A splice 0 1 reduces A and return
  • 如何检查 Objective-C 中的类?

    Update我修复了代码 以消除重写方法的重复 并通过实现来跟踪属性或方法的发起者Mark https stackoverflow com questions 1890480 how do i inspect a class in obje
  • 定制 Linux GUI:从哪里开始? [关闭]

    Closed 这个问题需要多问focused help closed questions 目前不接受答案 我长期以来一直对开发适合我的需求和兴趣的操作系统用户界面感兴趣 当我年轻的时候 我疯狂地使用 Windows 的 Stardock 换
  • 我们什么时候应该实现 Serialized 接口?

    public class Contact implements Serializable private String name private String email public String getName return name
  • 从网页中删除所有 HTML 标签

    我正在做一些 BASH shell 脚本curl 如果我的curl 命令返回任何文本 我就知道有错误 此文本返回者curl通常是 HTML 格式 我想如果我可以去掉所有 HTML 标签 我就可以将生成的文本显示为错误消息 我在想这样的事情
  • NPM 卸载包不起作用

    有人可以帮助我确定卸载 npm 软件包时我的 cli 代码有什么问题吗 当我运行此 cli 代码 如下图所示 时 npm 不会卸载软件包 而是将其添加到我的 node modules 中 我希望这个社区中的某个人可以解决我的问题 并为我带来
  • libgmp-10.dll 丢失

    我最近在我的 64 位 Windows 7 计算机上安装了 MinGW 当我尝试编译最基本的 C 程序时 例如 include
  • 使用 MSBuild 时不会构建私有访问器

    我的构建服务器使用 MSBuild 来构建我的应用程序 我们的单元测试需要访问一些私有成员进行测试 因此我们使用内置的私有访问器 Visual Studio 没有问题 但是当我们将代码推送到构建服务器时 我们收到错误 MyTest cs 9
  • 从数组中删除非唯一行

    我有一个数组a如下 a 1 2 3 4 1 2 我想删除在中多次出现的所有行a并得到c c 3 4 请注意 这与保留唯一行不同 因为我根本不希望出现重复行 我怎样才能做到这一点 第三个输出为unique https www mathwork
  • 重新编译CHM文件

    我正在编写一个脚本 该脚本应该能够向 chm file 反编译后使用hh exe decompile outputFolder fileName chm命令 我得到 html 文件和其他 2 个文件 hhc and hhk扩大 编辑 htm
  • Android -fragmentTransaction.replace() 不适用于支持库 25.1.0

    我使用片段替换 FrameLayoutfragmentTransaction replace Layout
  • SQL Server 表与索引的同义词

    我在 SQL Server 2005 的单个实例上有多个数据库 我在一个数据库上创建了一个同义词来访问另一个数据库上的表 并且在编写查询时 我想使用特定的索引 但是 在评估执行计划 它似乎没有使用它 如果我编写查询来显式访问数据库 它可以工
  • Flask-login:如果login_manager的session_protection设置为“strong”,请记住我不工作

    我正在使用 Flask login 将会话管理集成到我的 Flask 应用程序中 但是如果我设置了 记住我 功能就不起作用会话保护 to strong 但是 如果设置为 它绝对可以正常工作basic 用户加载器 login manager
  • 我可以在 cpp 中使用带有向量的嵌套循环吗?

    我有一个 cpp 问题 我不知道出了什么问题 也许你可以帮助我 我正在尝试实现图表的数据结构 在此图中 我将连接一些具有较小欧氏距离的节点 但在第二次迭代时 我的迭代器将指向 0x0 仅当我将这两个节点的距离给出到 std cout 时 才
  • dotnetopenid 教程 [关闭]

    Closed 这个问题不符合堆栈溢出指南 help closed questions 目前不接受答案 非常基本的问题 但是有人可以给我指点有关如何实现和使用 dotnet openid 的建设性教程吗 我正在努力寻找任何真正的文档来解释如何
  • 无法连接到 gmail smtp linode django apache2 设置

    您好 我在连接到 google smtp 服务器时遇到困难 上下文是 每当用户填写表单时 我的程序都会自动通过电子邮件将反馈发送到我的 Gmail 帐户 除了程序卡在 send mail 函数中之外 一切正常 我尝试这样做 telnet s
  • 如何使用 Java 8 流 API 以 O(N) 时间和 O(C) 空间复杂度从列表中仅删除一个最大值(最小值)

    以下代码用于从列表中仅删除一个最大值 在本例中为第一个值 但这无关紧要 这是O n 及时和O n 在空间中 超出输入 public List
  • PHP Nginx error_log 被截断

    我正在运行 nginx 和 PHP 5 5 以及我的所有error log当传递的字符串很长时 消息会被截断 我已经更新了我的php ini文件并将日志最大长度从 1024 增加到 0 无最大值 但这种情况仍在发生 如果您希望日志行长度超过
  • 如何在 Python 中进行 F 检验来比较嵌套线性模型?

    我想比较两个嵌套线性模型 将它们称为 m01 和 m02 其中 m01 是简化模型 m02 是完整模型 我想做一个简单的 F 检验 看看完整模型是否比简化模型增加了显着的效用 这在 R 中非常简单 例如 mtcars lt read csv