[R] If loop

CALUM POLWART po|c1410 @end|ng |rom gm@||@com
Fri Aug 9 08:35:08 CEST 2024


Is something wrong in the initialisation part that we don't see?

joint12 <- marg1 <-F

marg1 <-T

if (joint12) {
  print ("joint 12")
  cat (joint12)
}

if (marg1) {
  print("marg 1")
  cat(marg1)
}

Would probably be my diagnostic approach

On Fri, 9 Aug 2024, 04:45 Steven Yen, <styen using ntu.edu.tw> wrote:

> Can someone help me with the if loop below? In the subroutine, I
> initialize all of (joint12,marg1,marg2,cond12,cond21) as FALSE, and call
> with only one of them being TRUE:
>
> ,...,joint12=FALSE,marg1=FALSE,marg2=FALSE,cond12=FALSE,cond21=FALSE,,,,
>
> joint12 seems to always kick in, even though I call with, e.g., marg1
> being TRUE and everything else being FALSE. My attempts with if... else
> if were not useful. Please help. Thanks.
>
> v1<-cprob(z1,x1,a,b,mu1,mu2,rho,j+1,k+1)
>      v0<-cprob(z0,x0,a,b,mu1,mu2,rho,j+1,k+1)
>
>     ...
>
>      me1<-me0<-NULL
>      if(joint12) {me1<-cbind(me1,v1$p12); me0<-cbind(me0,v0$p12)}
>      if(marg1)   {me1<-cbind(me1,v1$p1); me0<-cbind(me0,v0$p1)}
>      if(marg2)   {me1<-cbind(me1,v1$p2); me0<-cbind(me0,v0$p2)}
>      if(cond12)  {me1<-cbind(me1,v1$pc12); me0<-cbind(me0,v0$pc12)}
>      if(cond21)  {me1<-cbind(me1,v1$pc21); me0<-cbind(me0,v0$pc21)}
>      ...
>
>    labels<-NULL
>    if(joint12) labels<-c(labels,lab.p12)
>    if(marg1)   labels<-c(labels,lab.p1)
>    if(marg2)   labels<-c(labels,lab.p2)
>    if(cond12)  labels<-c(labels,lab.pc12)
>    if(cond21)  labels<-c(labels,lab.pc21)
>
> ______________________________________________
> R-help using r-project.org mailing list -- To UNSUBSCRIBE and more, see
> https://stat.ethz.ch/mailman/listinfo/r-help
> PLEASE do read the posting guide
> http://www.R-project.org/posting-guide.html
> and provide commented, minimal, self-contained, reproducible code.
>

	[[alternative HTML version deleted]]



More information about the R-help mailing list