Я бы не рекомендовал использовать assign
с динамическими именами объектов.Позже становится очень трудно использовать эти объекты в вашем скрипте.
Вместо этого я предлагаю вам создать список и назначить результаты вашему списку.Одна из проблем, с которой вы столкнетесь, заключается в том, что спискам не нравятся индексы с десятичными разрядами, то есть он не будет различать 3.5
и 3.6
.Вот почему я использую целые числа в качестве индексов.
Я также извлекаю 7-й элемент каждого gev.fit
объекта сразу, а не позже.Если вам сначала нужен весь объект, вы можете извлечь 7-й элемент каждого списка, используя функцию apply
.
X = seq(from=3.5, to=5, by=0.1)
gevlist <- list()
for (i in seq_along(X)) {
max_var <- X[i]
gevlist[[i]] <- gev.fit(-mydata[(mydata$VAR < max_var), 6])[[7]]
}
gev.models <- data.frame(X = X, models = gevlist)