glm 起始值不被接受日志链接

2024-06-25

我想运行带有日志链接和偏移量的高斯 GLM。 出现以下问题:

y <- c(1,1,0,0)
t <- c(5,3,2,4)

没问题:

exp(coef(glm(y~1 +  offset(log(t)), family=poisson)))

with family=gaussian,需要指定起始值,它在这里工作:

exp(coef(glm(y~1, family=gaussian(link=log), start=0)))

但在这里不起作用:

exp(coef(glm(y~1 +  offset(log(t)), family=gaussian(link=log), start=0)))

eval(expr, envir, enclos) 中的错误:找不到有效的起始值:请指定一些”

有谁看到出了什么问题(希望只是在我的编码中)?


以下是一些考古学的结果,解释了地球深处正在发生的事情glm功能:

调试(用debug("glm"))并单步执行该函数表明它在以下调用时失败:

if (length(offset) && attr(mt, "intercept") > 0L) {
  fit$null.deviance <- eval(call(if (is.function(method)) "method" else method, 
    x = X[, "(Intercept)", drop = FALSE], y = Y, weights = weights, 
    offset = offset, family = family, control = control, 
    intercept = TRUE))$deviance
}

这是计算模型零偏差的尝试。仅当存在截距项和偏移项时才对其进行评估(我不确定为什么;可能是之前调用计算出的默认零偏差glm在这种情况下是错误的,必须重新计算?)。它调用glm.fit(默认值method), but without起始值,因为这些对于仅截距模型通常是不必要的。

现在正在内部调试glm.fit看看会发生什么:我们得到(在对 family 函数的调用中,gaussian()) to:

  if (is.null(etastart) && is.null(start) && is.null(mustart) && 
    ((family$link == "inverse" && any(y == 0)) || (family$link == 
        "log" && any(y <= 0))))
    stop("cannot find valid starting values: please specify some")

我们看到,因为起始值没有被传递,因为使用了日志链接,并且因为一些y值等于零,拟合失败。因此,如果(且仅当?)同时指定了偏移量和截距、使用了日志链接并且响应中存在零值,则应该发生这种情况。

If you dump("glm",file="glmtemp.R");添加行

    start = start[1], etastart = etastart[1], mustart = mustart[1],

适合零偏差的调用(即上面所示的调用);和source("glmtemp.R"),似乎工作正常...我think这应该是一个合理的通用解决方案。如果有人想在 R 开发列表中提出这个问题,请随意。

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

glm 起始值不被接受日志链接 的相关文章

  • 在ggplot2中添加水平线到绘图和图例

    这段代码创建了一个漂亮的图 但我想在 y 50 处添加一条水平黑线 并让图例显示一条黑线 并在图例中显示文本 cutoff 但在图例中保留源点 我可以使用 geom line 添加该行 但无法在图例中获取该行 library ggplot2
  • 动态显示仪表板页面

    我有一个实用的闪亮应用程序 它使用shinydashboard包裹 新功能需要特定于用户的行为 例如 针对不同的用户名使用不同的数据集 因此我打算 显示登录表单 验证凭据并设置反应值LoggedIn to true如果成功的话 显示实际情况
  • 在 dfm 中查找非英语标记并将其删除

    在 dfm 中如何检测非英语单词并将其删除 dftest lt data frame id 1 3 text c Holla this is a spanish word English online here Bonjour commen
  • 如何重新格式化数据并映射它?

    假设我有数据 其中列名称是城市 行名称是经度和纬度 Columbus Nashville Austin Washington D C London Manchester lon 82 99879 86 7816 97 74306 77 03
  • 如何将字符串转换为日期?

    我已经搜索过 但找不到如何从格式如下的字符串转换日期 date lt 07 21 2015 09 30AM 我想用as Date 但我还没有做到 我得到的只是以下内容 as Date date format m d y hAM NA as
  • strsplit 与 gregexpr 不一致

    一条评论 https stackoverflow com questions 23961022 split strings on first and last commas 23964843 noredirect 1 comment3692
  • 库存推文、文本挖掘、表情符号错误

    我希望您能够协助进行文本挖掘练习 我对 AAPL 推文感兴趣 并且能够从 API 中提取 500 条推文 我自己克服了几个障碍 但最后一部分需要帮助 由于某种原因 tm 包没有删除停用词 您能看一下可能是什么问题吗 表情符号会引起问题吗 绘
  • 如何在 dbplyr 中使用自定义 SQL 函数?

    我想计算数据库中的 Jaro Winkler 字符串距离 如果我将数据带入 R 使用collect 我可以轻松地使用stringdist函数从stringdist包裹 但我的数据非常大 我想过滤 Jaro Winkler 距离before将
  • 当 R 中出现“warnings()”时中断循环

    我有一个问题 我正在运行一个循环来处理多个文件 我的矩阵非常巨大 因此如果我不小心 我经常会耗尽内存 如果创建任何警告 是否有办法打破循环 它只是继续运行循环并报告它在很久以后失败 烦人 聪明的 stackoverflow ers 有什么想
  • R data.table 使用列作为参数将函数应用于行

    我有以下内容data table x structure list f1 1 3 f2 3 5 Names c f1 f2 row names c NA 3L class c data table data frame 我想对每一行应用一个
  • 将数据帧的每一列乘以向量的相应值[重复]

    这个问题在这里已经有答案了 我有以下数据框和向量 dframe lt as data frame matrix 1 9 3 vector lt c 2 3 4 我想将每一列相乘dframe通过相应的值vector 这不会做 gt vecto
  • dplyr 通过评估查找单元格值来改变特定列

    我已经使用定额 符号和求值探索了各种选项 但我似乎无法获得正确的语法 这是一个示例数据框 data frame A letters 1 4 B letters 26 23 C letters c 1 3 5 7 D letters c 2
  • knitr pandoc:“无法使用 pdf writer 生成 pdf 输出”

    Up front using pandoc 在knitr中 当尝试将 md或 Rmd编译为PDF时 它会抱怨 我正在简化流程可重复的研究 正如许多地方所记录的那样 我在用着pandoc and knitr并制作出色的文档 我还试图为一些不太
  • R 中的离散化

    有谁知道有一个包可以实现连续变量离散化的监督学习算法 dprep 包包含类似的功能 但该包已被弃用 有任何想法吗 感谢您的帮助 您仍然可以使用dprep包 但你必须从源代码安装它 我刚刚测试过 它运行良好 不过 您或许可以看看离散化 htt
  • 带有 selectInputs 的 DT 数据表在选择后重置回左侧

    我在 Shiny 应用程序的 DT 数据表的列中使用 selectInputs 感谢一些帮助here https stackoverflow com questions 74620665 vertically center selectin
  • 在ggplot2中设置base_size时重叠轴标签

    我正在改变base size via theme set 当我在屏幕上查看结果图时 它看起来很棒 但是 当我将其另存为 pdf 时 x 轴标签有点太接近轴编号 一件小事 theme set theme bw base size 9 不会造成
  • 没有适用于“filter_”的方法应用于类“c('double', 'numeric')”的对象

    使用下面的代码 我尝试过滤我的数据集 以便仅选择 CG less14 0 和 CG High14 0 的数据集 我收到错误 没有适用于 filter 的方法应用于 c double numeric 类的对象 我的代码有问题吗 married
  • 如何在R中绘制堆积柱形图?

    有谁知道如何使用 R 绘制由超过 1 个变量堆叠的列的直方图 就像excel中的 堆积柱形图 一样 谢谢你 我假设您确实想要一个条形图而不是直方图 在这种情况下 barplot从标准图形或barchart格子包中的两者都可以做到 或者使用
  • 在 R 中,将一列值与所有其他列进行比较

    我对 R 非常陌生 我有一个问题对于这里的专家来说可能非常简单 假设我有一个表 sales 其中包含 4 个客户 ID 123 126 和 4 个产品 A B C D ID A B C D 123 0 1 1 0 124 1 1 0 0 1
  • 如何为 R 中接下来的 2 个单元格复制相同的列值[重复]

    这个问题在这里已经有答案了 我正在尝试使用 R 为列中接下来的 2 个单元格复制相同的列值 我有以下形式的数据框 Time World Cate Data 1994 Africa A 12 1994 B 17 1994 C 22 1994

随机推荐

  • 使用 VS 2010 数据库管理示例数据

    我正在使用 Visual Studio 2010 中的数据库项目来管理我的所有数据库代码 对于我的应用程序 我们将每个客户端的数据分离到他们自己的数据库副本中 并使用通用数据库将用户映射到适当的数据库 我希望在 TFS 中保留几个不同的示例
  • 如何获取已打开连接的套接字 ID/句柄/描述符? (.NET、C++、德尔福)

    我的问题已在标题中说明 我到底该怎么做呢 我有一个开放的连接 我想 劫持 它并通过它发送我的自定义消息 据我了解 这是通过套接字及其处理程序完成的 任何语言都可以 但首选 C NET 谢谢 UPDATE 我到底想要实现什么 我想为 post
  • 如何从代码获取复制状态

    我已经在 SQL Server 2005 数据库上完成了复制 现在我想从我的 GUI 显示状态 可以是 C 或其他 是否有任何方法或 API 可以让我监控复制状态 这是为了客户端确认复制正在工作 Thanks 像这样的事情 http www
  • 金钱计算,Java 和 Oracle/PL SQL 的使用比较

    大家可以对 Oracle PL SQL 和 Java 在处理货币计算时的优缺点进行很好的比较 如果您要开发一个需要处理大量资金计算的应用程序 您会使用这两者中的哪一个 为什么 这个问题并不是要引发oracle pl sql和java爱好者之
  • FRebase Firestore onCreate 云函数事件参数未定义

    我尝试按照 Firebase 的文档和其他 SO 帖子访问我已成功部署的云函数的参数值 不幸的是我仍然收到了 类型错误 无法读取未定义的属性 id 我已经记录了 event params 并且它输出为未定义 所以我理解这个问题 但不确定从语
  • 在 REDIS+RABBITMQ+Celery 中访问 Postgres DB 会使用“信号 11 (SIGSEGV) 终止 Python 任务”

    当我们运行 SQL 命令时 例如 video Video objects get pk 1 在Python视图中 它工作没有任何问题 然而 如果在定义为 celery 的方法中启动 shared task 它死了并杀死了PythonERRO
  • 使用 theme_menu_tree() 为自定义菜单设置主题

    我正在尝试覆盖块中的自定义菜单输出 以便代替 ul class menu ul 我可以得到
  • HTMLInputElement 没有方法“val”

    我正在循环遍历表行中的单元格 每个单元格中都有一个文本框 我想获取文本框的值并将其推送到数组中 function dothing var tds selected td var submitvals new Array tds each f
  • 在 IntelliJ 中运行单元和集成测试

    目前 我的 Java 项目中有两组不同的测试 单元测试 集成测试 这些测试使用 Arquillian 在容器中运行 我目前使用 Gradle 作为我的构建脚本 并使用 JetGradle 与 IntelliJ 12 集成 在我的 Gradl
  • rxJava中如何返回值

    我是 rxJava 的新手 它让我头晕目眩 基本上 我通过改造从 youtube api 中提取数据 该改造返回 Observable 并使用 youtubeDataMapper 将其映射到包含字符串 videoID 的 Youtube P
  • Javascript for-in 和内置属性

    为什么使用 for in 控制块时不会迭代 javascript 对象的内置属性 而用户定义的属性却可以 例如 var y car for var j in y console log j 将打印 0 1 2 尽管 String proto
  • PHP 代码帮助 - 黑客攻击 apache 服务器

    我发现以下代码出现在我的多个服务器网站上的两个相同的 php 文件中 这些文件的名称不显眼 例如 reminder php 但每次都有不同的名称 并出现在我的 scripts 和 uploads 文件夹中 有时出现在其他文件夹中 它们的出现
  • 我计算的 FPS 正确吗?

    所以我想知道我是否正确计算了 FPS Uint32 delayFrom float startTime float endTime return endTime startTime int main int numFrames 0 Uint
  • 如何在 Windows 操作系统上安装 BigMemory 和 bigrf

    我一直在尝试在我的 R 安装上安装 bigmemory 我的操作系统是 windows 7 64 位 我已经在 R V2 15 1 2 15 2 和 3 0 1 64 位上尝试过 但我无法让它工作 我尝试了几种选择 下载当前源并在 R v3
  • 在 AWS Tensorflow 实例中安装 SciPy

    我完全碰壁了 我正在尝试将 SciPy 安装在预先配置了 Tensorflow 的 AWS 实例上 该实例没有apt get包管理器 所以我被迫使用pip 所以我尝试过udo usr local bin pip install scipy
  • 如何查看 SVN 工作副本中每个文件的修订号?

    我与另一位开发人员在同一个工作副本中工作 我知道这是一个坏主意 我们通常会更新单个文件 现在我们有一些版本中的文件和另一个版本中的其他文件 如何查看包含各自修订号的文件列表 工作副本位于 Linux 机器中 我们使用 svn 命令行 预先感
  • 你能通过 JavaScript 保存/加载文件吗?

    我想使用 HTML5 Canvas 创建一个非常简单的 Javascript 游戏 但是是否可以保存一个简单的 txt 文件并加载一个简单的 txt 文件 我只需要存储一些简单的整数 但我只是想知道是否允许javascript保存和加载外部
  • Excel 单元格对齐:例如数值xlLeft、xlRight 还是 xlCenter?

    我一直在尝试对齐 Excel 单元格文本值 我尝试过更常见的xlLeft xlRight但这似乎不起作用 错误是xlLeft没有宣布 我正在使用 Visual Studios 并使用 VB 创建一个 aspx 页面 这是我的代码示例 Dim
  • Android 中的序列化

    我正在尝试在 android 中序列化绘图和路径 当我将对象写入 Objectoutputstream 时 会引发 Notserializabale 异常 我还覆盖了serializabale类中的writeObject 方法 这是代码 p
  • glm 起始值不被接受日志链接

    我想运行带有日志链接和偏移量的高斯 GLM 出现以下问题 y lt c 1 1 0 0 t lt c 5 3 2 4 没问题 exp coef glm y 1 offset log t family poisson with family