如何在sapply()

时间:2017-10-06 13:57:29

标签: r for-loop sapply

我是R语言的新手,我试图避免在我的程序中使用循环,所以我使用sapply()或ifelse(),但我遇到了一些问题。这是我的程序,

rowNum <- 1
  txn$'ACCT_NUM' <- sapply(c(1:nrow(txn)), function(x) if(txn$'ACCT_ID'[x]==MKAccts$'ACCT_ID'[rowNum]){
    return(MKAccts$'ACCT_NUM'[rowNum])
  }else{
    rowNum <- rowNum +1
    print(rowNum)
    return(MKAccts$'ACCT_NUM'[rowNum])
  })

我发现每次在sapply()函数中,当它调用rowNum时,它将再次设置为1,我认为这可能是由于它被调用的原因, sapply()中的函数实际上并没有反映出函数的值,但是无论如何通过使用sapply()或ifelse()实现这一点? 谢谢!

0 个答案:

没有答案