【问题标题】:How to extract p-values如何提取 p 值
【发布时间】:2020-04-22 09:03:32
【问题描述】:

一段时间以来,我一直在尝试在我的数据集的第一次观察和其余 199 次观察之间回归。我使用了 lapply 函数,并将回归结果作为列表存储在环境中。 我的目标是仅获取 p_values 列表作为数据框,并确定有多少观察值小于 0.05。 任何帮助将不胜感激!

## Here are the code I am using right now.
myre1 <- apply(2:ncol(muscle), function(x) lm(muscle[,1] ~ muscle[,x], data = muscle))
myre2 <- lapply(muscle[,-1], function(x) lm(muscle$GIR ~ x))

## To extract the coefficient
myre3 <- lapply(2:ncol(muscle), function(x) coefficients(lm(muscle[,1] ~ muscle[,x], data = muscle)))
myre4 <- lapply(muscle[,-1], function(x) coefficients(lm(muscle$GIR ~ x)))

【问题讨论】:

  • 在这里交叉发布:community.rstudio.com/t/…
  • 请提供一个可重现的例子:stackoverflow.com/q/5963269/11117265
  • dplyr::unnest()? as.dataframe()? unlist()?
  • 嗨,Amare,查看您的代码,我认为您的意思是“变量”而不是“观察”。据我了解,您正在尝试将lm 与第一列作为响应,并将其他所有内容作为预测器,然后找出这些预测器中的哪些实际上解释响应。如果我做对了,我建议你试试lm1 = lm(resp ~ ., data = data); summary(lm1)

标签: r


【解决方案1】:

试试这个。您将获得系数以及 p.values

sum1 <- lapply(mre1, function(x) summary(x)$coefficients)
sum2 <- lapply(mre2, function(x) summary(x)$coefficients)

您可能需要将 sum1 和 sum2 转换为数据框。

编辑:

单独提取p值

sum1 <- lapply(mre1, function(x) summary(x)$coefficients[10:12])
sum2 <- lapply(mre2, function(x) summary(x)$coefficients[7:8])

【讨论】:

  • 感谢您的重播。我在下一页上发布了一个示例。如果你有时间,请看一下。 community.rstudio.com/t/…
  • @AmareWolide 你想提取系数的 p 值还是 f 统计量?
  • @AmareWolide 检查我更新的答案,看看它是否有效。
  • 非常感谢。我检查过,看起来不错,但我们可以只提取系数的 p 值吗?
  • @AmareWolide 我尝试直接从列表中引用 p.values,但我无法得到它。无论如何,我再次更新了代码,以便从系数框架中提取 p.values。
猜你喜欢
  • 1970-01-01
  • 2021-01-12
  • 1970-01-01
  • 2011-03-22
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2020-07-03
  • 2022-01-17
相关资源
最近更新 更多