如何使As.formula与循环一起工作?

如何使As.formula与循环一起工作?,r,R,我在这个论坛上的其他帖子也有类似的问题,我尝试了其他地方建议的方法,但我不确定它是否适用于我的情况,因为我没有使用“最不重要的”。我的代码是 for(i in 1:length(YVAR)){ for(i in 1:length(YVARCONTROL)){ regression[[i]] <- ivprobit(as.formula(paste(YVAR[[i]] ~ YVARCONTROL[[i]] + CONTROL1 + CONTROL2 + CONTROL3 + CONTROL4

我在这个论坛上的其他帖子也有类似的问题,我尝试了其他地方建议的方法,但我不确定它是否适用于我的情况,因为我没有使用“最不重要的”。我的代码是

for(i in 1:length(YVAR)){
for(i in 1:length(YVARCONTROL)){
regression[[i]] <- ivprobit(as.formula(paste(YVAR[[i]] ~ YVARCONTROL[[i]] + CONTROL1 + CONTROL2 + CONTROL3 + CONTROL4 + CONTROL5 + CONTROL6|XVAR|INSTRUMENT)), data=finaldata)
}
}
for(i/1:长度(YVAR)){
用于(1中的i:长度(YVARCONTROL)){

回归[[i]]as.formula
中的内容需要是一个合适的字符串。因此,这应该是可行的(由于缺少示例数据而未进行测试):

for(i/1:长度(YVAR)){
用于(1中的i:长度(YVARCONTROL)){

回归[[i]]非常感谢这似乎有效,但现在它告诉我“chol.default(mat)中的错误:4阶的前导小调不是正定的”,这正常吗?我从来没有使用过
ivprobit
,所以我不知道。在我看来,这与发布的问题是不同的。如果我的答案有效,你可以接受,并用一个简化的例子问一个新问题(只需一次迭代就会产生错误).我相信很多人对该命令了解得更多!您是否尝试过不使用
公式
粘贴
for(i in 1:length(YVAR)){
  for(i in 1:length(YVARCONTROL)){
    regression[[i]] <- ivprobit(as.formula(paste(YVAR[[i]],  "~", YVARCONTROL[[i]], "+ CONTROL1 + CONTROL2 + CONTROL3 + CONTROL4 + CONTROL5 + CONTROL6|XVAR|INSTRUMENT")), data=finaldata)
  }
}