问题标签 [visreg]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
1 回答
1344 浏览

r - 更改 visreg 线条颜色

我正在使用 R 包 visreg 来可视化模型的结果。我想将回归线的颜色从默认的蓝色更改为黑色。添加col = "black"没有帮助。如何进行此更改?

谢谢!

0 投票
1 回答
1491 浏览

r - 如何使用 visreg 和 ggplot2 更改轴标签

我正在使用该visreg软件包gg = TRUE(因此它将使用ggplot2图形)来渲染我的拟合模型图。

它会自动使用自变量因子的名称作为 x 轴标签,但我需要它们的外观略有不同,并尝试使用此处scale_x_discrete可以看到的更改标签文本。

但是当我这样做时,x 轴标签、轴线及其标题变为空白。我相信我无法将参数映射labelsbreaks参数。

我也收到消息

“x”的比例已经存在。为“x”添加另一个比例,它将替换现有比例。

问题可能在于如何visreg存储变量(及其级别)信息。单独使用ggplot2时,可以使用data$variablename. 但是通过visreg这个创建基本情节并不是那么简单。

我已经尝试过的:

  • 使用默认绘制的变量级别名称作为中断。
  • 尝试使用 访问变量级别fit$xlevels$Species
  • 猜测visreg可能是将整数归为级别并尝试使用 breaks = c(as.factor("1","2","3")).

如何重现问题:

在不尝试更改标签的情况下 x 轴的外观:

0 投票
1 回答
226 浏览

r - 用 visreg 控制构面列号

虽然我喜欢使用包visreg来可视化我的回归,但有一件事我还无法控制:分面时的列数。例如,请参见以下逐条曲线广义加性回归:

如果我做

我得到一个 1 行 5 列的逐条曲线因子。

在此处输入图像描述

有趣的是,如果我拿出gg = TRUE来,它就变成了 2 排。但无论是哪种情况,我都希望能够在分面时控制列数和行数。到目前为止,我通过操纵省略号参数visreg或直接尝试操纵结果ggplot对象都没有成功。

因此,例如,如果我想visreg使用gg = TRUE3 行 2 列,那么我最好的机会是什么——或者是否有其他推荐的包?

0 投票
1 回答
898 浏览

r - 使用 visreg 和 ggplot 按组更改颜色

在使用二元预测器运行逻辑回归后,当我尝试使用 visreg 和 ggplot 绘制结果时,图例表明颜色已按组更改,但它们在图中没有更改。

这是使用 mtcars 数据的问题说明。

仅有的两个二元变量是 vs 和 am,但需要将它们从数值转换为因子才能使此插图起作用。

运行模型。

现在尝试使用 visreg 以及其他 ggplot 函数来自定义颜色和标签来绘制结果。

对于 am = 1 组,我希望线条和阴影区域都应该是橙色(#d95f02),对于 am = 0 组,线条和阴影区域都应该是绿色(#1b9e77)。如您所见,这不是代码产生的。在此处输入图像描述

0 投票
0 回答
470 浏览

mumin - 将 MuMin 的模型平均结果转换为 visreg 或效果包中的绘图

我正在使用构建全局模型MuMin来执行模型平均,一切正常。glmmTMB

然后,我想使用visregoreffects包来产生结果的效果显示。这两种方法都适用于使用glmmTMB但不是使用模型平均结果生成的常规模型。

avg.model我很欣赏in的输出MuMin是组件模型和系数的列表,它与visregor不兼容effects。我试过总结平均模型,它看起来更像是常规输出,glmmTMB但这也不起作用:

mysum<- summary(avg.model)

因此,我想知道是否有任何方法可以将平均模型的输出转换、重新格式化或以其他方式产生输出为glmmTMB与诸如visregetc. 等软件包兼容的等效格式?

我不确定这是否可以做到,但如果不能,很遗憾模型平均的输出不能以某种方式与接受常规 glmm、glm 等输出的包一起使用。
任何帮助或想法表示赞赏!谢谢,丰富

PS对不起,如果这是在错误的论坛,感觉更像是软件而不是统计数据。

0 投票
0 回答
214 浏览

r - 使用 ggplot() 在边框中重新创建 visreg() 数据刻度

我想重新创建在visreg()逻辑回归图边界中找到的数据刻度,使用ggplot(). 在此处输入图像描述

我可以得到用 绘制的数据点geom_point(),但这些在轴空间中,我想将它们放在边界中。 在此处输入图像描述

我试过用函数查看源代码,getAnywhere()visreg()在那里看不到任何信息。有任何想法吗?一个可重现的例子:

0 投票
1 回答
357 浏览

r - 如何在 R 中的 visreg 中对平方根转换后的数据进行反向转换

我一直在尝试从 R 中的 visreg 中的平方根转换数据进行反向转换,但我找不到 trans= 的正确命令。在 visreg 指南中,它只讨论了使用 trans=exp 对日志转换数据进行反向转换。如何指定我想使用 trans= 对值进行平方?

这是我的代码:

m5<-lm(sqrt(forearm_m)~pro_two +lat_n +year +sat, data=pleaur_w) Anova(m5) summary(m5) plot(m5) visreg(m5, "year", xlab="Year", ylab="Forearm (cm)", trans=, main="P. auritus", line=list(col="black"), cex.main=1.8, cex.lab=1.8, plot=TRUE)

0 投票
0 回答
81 浏览

r - 如何仅获取 Visreg 图的 1 个特定横截面或如何在 gg 对象中仅选择/子集 1 个多面图?

我正在运行逻辑回归以获得某些输入的概率。我将使用一个例子:

我想根据他们的 GRE 和 GPA 预测某人被研究生院录取的机会。使用 visreg 包,它很容易和很好地与床一起制作。

在这个例子中,它将产生一个 ggplot2 图,在 3 个横截面上刻面 3 次,这是你的 GRE 分数 +/-1。然后它将向您显示该 GRE 分数的回归曲线以及您被录取的概率,因为 x 轴因 GPA 而异。

我的问题是 visreg 处理横截面的方式。Break 参数告诉它我想要哪些横截面。如果断点 = 一个数字,那么这就是横截面的数量(因此 80 将产生 80 个横截面,而不是 GRE=80 的横截面)。如果它是一个数字向量,那么它将在“by”变量的那些值处产生横截面。所以我只能有至少 2 个横截面。如果没有为中断输入参数,它将在第 10、50、90 个百分位数处进行,如果放入 (1),它将在平均值或中位数处进行横截面,我不确定。

另一个问题是我正在使这些图与 ggplotly 交互。我能够将此 ggobject 转换为 grob 对象,删除额外的列,然后将我想要的单个面绘制到新的 grid.newpage() 上,但是这样的绘图不能作为对象返回,我无法使其交互阴谋。

有没有一种方法可以使用 visreg 获得特定值的横截面,而无需使用横截面应该所在的点向量?或者我可以从 ggplot 对象中删除/子集一个方面吗?

谢谢

可重现的示例:请注意:我只使用 3 个 GRE 分数(假设我输入我的分数为 320)来构建 glm 模型。我构建模型的数据具有整个可能的分数范围。另请注意,我之所以选择 3 只是因为我需要在 break 参数中包含一个分数向量。我本可以选择 2,但显示 3 似乎更合适,因此您可以看到您的机会将如何改变 +/-1 GRE 分数。我添加了高达 326 的观察值,因此平均值/中位数不会是我想用作示例输入的 320

0 投票
0 回答
236 浏览

r - 使用包 visreg 绘制逻辑模型不起作用数据未找到

我今天的第二个问题:我想使用这个visreg包来绘制我的逻辑回归模型。只要我不使用属性“by”,它就像一个魅力,但是当我想使用它时,我得到一个错误。我用来创建模型的代码如下:

如果我然后使用:

我得到以下结果 在此处输入图像描述

这很好。但是,如果我现在添加“by”属性,则会出现错误:

在此处输入图像描述

我用谷歌搜索,据我了解,该函数找不到绘制模型的数据。但是我在哪里可以提供数据?我已经尝试过“data=”属性,但它对我不起作用(或者我做错了)。没有控制台输出,我只能提供图表本身的消息。有人可以帮助我吗?亲切的问候,简 :)


编辑:我使用了来自 vincent arel-bundocks github 的“nassCDS”数据卫星,您可以在此处找到:https : //vincentarelbundock.github.io/Rdatasets/datasets.html能够使用逻辑回归。因此,我使用了 dplyr 包和以下代码:

此外,我将列安全气囊和安全带更改为数字,正如另一位 stackoverflow 用户所建议的那样。

0 投票
0 回答
407 浏览

r - R 中 GLM 的 Visreg:“求解”中的奇异矩阵“a”错误消息

我对 R 相当陌生,但到目前为止一直在设法将它用于我的硕士论文。

运行以下 GLM:

我正在尝试使用 visreg 可视化回归,但是收到以下错误消息。我使用 visreg 来运行相同结构的模型和相同格式的数据,它运行良好 - 唯一的区别是数据集是针对不同的时间段的,所以我不确定这次有什么不同。

qr.solve(qr.R(qr.lm(object))[p1, p1]) 中的错误:
求解中的奇异矩阵“a”

此处的最小可重现示例:

https://drive.google.com/drive/folders/1p3-0BqKvErtedbT2PIr0J_FKSxihg4Td?usp=sharing