当我使用非动态名称时,事情按预期工作:
summary(date1fit <- lm(masterdf.date[[1]]$LeastDiluteMPN~masterdf.date[[1]]$temp))
当我尝试根据[[i]]命名拟合但是我得到错误说明&#34;找不到功能&#39;粘贴&lt; - &#39; &#34;或&#34;无法找到功能&#39;分配&lt; - &#39; &#34 ;.我尝试过以下方法:
summary(date.names[[i]] <- lm(masterdf.date[[1]]$LeastDiluteMPN~masterdf.date[[1]]$temp))
summary(paste(date.names[[i]]) <- lm(masterdf.date[[1]]$LeastDiluteMPN~masterdf.date[[1]]$temp))
summary(assign(date.names[[i]]) <- lm(masterdf.date[[1]]$LeastDiluteMPN~masterdf.date[[1]]$temp))
summary(assign(paste(date.names[[i]]), "", sep="")) <- lm(masterdf.date[[1]]$LeastDiluteMPN~masterdf.date[[1]]$temp))
任何人都可以帮我弄清楚我在哪里出错吗?我错过了什么?我需要嵌套循环吗?我正在使用的完整代码如下。
谢谢!
masterdf <- masterdf[order(as.Date(masterdf$date, format="%d/%m/%Y")),]
dates <- unique(masterdf$date)
masterdf.date <- list()
for(i in 1:length(dates)) {
masterdf.date[[i]] <- masterdf[masterdf$date==dates[i],]
}
date.names <- paste("date", dates, sep="")
summary(DYNAMIC NAME <- lm(masterdf.date[[1]]$LeastDiluteMPN~masterdf.date[[1]]$temp))
答案 0 :(得分:2)
为什么要在汇总中进行分配?伊克。分两步完成:
> d=data.frame(x=1:10, y=runif(10))
> dmodel <- lm(y~x,data=d)
> summary(dmodel)
然后你可以有一个清单并执行:
d=list()
for(i in 1:10){
d[[i]] = lm(....whatever...)
summary(d[[i]])
}
如果你疯狂到想要“动态名字”,那么:
crazyname = paste("mad",i)
assign(crazyname, lm(y~x,data=d))
summary(get(crazyname))