# I have problem with Boolean operators &&

I have a problem in this code when I want to compare the sum of x with s1 and sum y with s2 I got the NA. I storage the sum of x in xx and the sum of y in yy then compear that with s1 and s2 by using && operators why I got NA could someone help me to correct this problem. Thank you.

``````rm(list = ls())
options(scipen=999)

exactpois <- data.frame(X = numeric(0),
Y = numeric(0))
lambda=4
B1=2
B2=4
set.seed(0)

for(s1 in seq(from = 1.5, to = 7.5, by = 2))
{
for(s2 in seq(from = 1.5, to = 13.5, by = 4))
{
count=0
l=0
xx=0
yy=0
for (j in 1:100)
{
f = rpois(1,lambda)
if(f == 0)
{
count = count + 1
next
}

x = rexp(f,1/B1)
y = rexp(f,1/B2)

data_a1 <-exactpois[1:50,]
xx=sum(data_a1\$X)
yy=sum(data_a1\$Y)

if(xx== s1 && yy<= s2)
{
l = l + 1
}
if(xx< s1 && yy== s2)
{
l = l + 1
}
if(xx< s1 && yy< s2)
{
count=count+1
}
newrow <- data.frame(X = x,
Y = y)
exactpois <- rbind(exactpois, newrow)
}
p2=(count+l)/10

rho=cor(data_a1\$X,data_a1\$Y)
z=pbivnorm(s1,s2,rho)

print(paste0("s1 =",s1))
print(paste0("s2 =",s2))
print(paste0("The true p-value =",p2))
print(paste0("The Normal =",z))
}
}
``````

I am a beginner in Rstudio could you help me please and correct my code because I couldn't do what you mentioned. Thanks in Advance.

The problem is basically as @Yarnabrina describes. You create `xx=sum(data_a1\$X)`, but at this point `data_a1\$X` hasn't been defined. So the sum is NA. You need to change the logic of your code so that either `data_a1\$X` is defined or so that you check for `is.na(xx)` before trying the `if` statement.

This topic was automatically closed 21 days after the last reply. New replies are no longer allowed.

If you have a query related to it or one of the replies, start a new topic and refer back with a link.