小编use*_*522的帖子

使用“segmented”和从 R 中 tidyverse“map”的输出中提取的 lm 时出错

我正在使用 ' segmented' 包来查找 R 中线性回归的断点

library(tidyverse)
library(segmented)

df <- data.frame(x = c(1:10), y = c(1,1,1,1,1,6:10))
lm_model <- lm(y ~ x, data = df)
seg_model <- segmented(obj = lm_model, seg.Z = ~ x)
Run Code Online (Sandbox Code Playgroud)

但是,如果我在 a 中运行相同的模型purrr:map,则分段会失败。

map_test <- df %>% 
  nest() %>%
  mutate(map_lm = map(data, ~lm(y ~ x, data = .)),
         param_map_lm = map(map_lm, tidy))

map_lm_model <- map_test[[2]][[1]]

map_seg_model <- segmented(obj = map_lm_model, seg.Z = ~ x)
Run Code Online (Sandbox Code Playgroud)

“is.data.frame(data) 中出现错误:对象‘.’ 未找到”

当从映射输出中提取的 lm 中获取 lm obj 时,segmented 无法找到底层数据。 …

r purrr

8
推荐指数
1
解决办法
414
查看次数

标签 统计

purrr ×1

r ×1