У меня есть такой фрейм данных
df <- data.frame(tiny = rep(letters[1:3], 20),
block = rnorm(60), tray = runif(60, min=0.4, max=2),
indent = sample(0.5:2.0, 60, replace = TRUE))
Я вложил этот фрейм данных
nm <- df%>%
group_by(tiny)%>%
nest()
затем написал эти функции
library(dplyr)
library(purrr)
library(tidyr)
model <- function(dfr, x, y){
lm(y~x, data = dfr)
}
model1 <- function(dfr){
lm(block~tray, data = dfr)
}
Я хочу запустить эту модель для всех крошечных классов, поэтому я сделал
nm%>%
mutate(
mod = data %>% map(model1)
)
приведенный выше код работает нормально, но если я хочу предоставить переменные в качестве аргументов, как в функции model1
, я получаю ошибки. Это то чем я занимаюсь
nm%>%
mutate(mod = data %>% map(model(x=tray, y=block)))
Я продолжаю получать ошибку Error in mode(x = tray, y = block) : unused argument (y = block)
.
Также я попытался построить их, используя ggplot2
plot <- function(dfr, i){
dfr %>%
ggplot(., aes(x=tray, y=block))+
geom_point()+
xlab("Soil Properties")+ylab("Slope Coefficient")+
ggtitle(nm$tiny[i])
nm%>%
mutate(put = data %>% map(plot))
идея состоит в том, что я хочу, чтобы ggplot
поместил заголовки a, b и c для каждого из графиков, которые будут созданы. Любая помощь будет принята с благодарностью. Спасибо
model1()
определено для любых параметров - person Nate   schedule 28.02.2017Error: is.data.frame(.data) || is.list(.data) || is.environment(.data) is not TRUE
- person Kay   schedule 01.03.2017