Message-ID: <6547C252-80FC-4436-AC4C-9DB58344C002@comcast.net>
Date: 2012-02-05T22:35:31Z
From: David Winsemius
Subject: nested if else statements
In-Reply-To: <CAMMiRhzor-Xc8mqjQ=faA9+T0f4cjyBaO_HwPhUxXRqZwd7vXA@mail.gmail.com>
On Feb 5, 2012, at 5:30 PM, Philip Robinson wrote:
> I have a vector of 2,1,0 I want to change to 0,1,2 respectively (the
> data
> is allele dosages)
>
> I have tried multiple nested if/else statements and looked at the ?
> if help
> and cannot work out what is wrong, other people have posted code
> which is
> identical and they state works.
>
> Any help would be greatly appreciated.
>
>> A[1:20]
> [1] 1 1 0 0 1 0 1 0 1 0 0 0 1 1 0 1 1 1 0 0
B <- 2L - A
Or did I miss something in the problem statement?
>
>> B <- rep(NA,length(A))
>
>> for (i in 1:length(A)){ if(A[i]==2){B[i] <- 0} else
> + if(A[i]==0){B[i] <- 2} else
> + if(A[i]==1){B[i] <- 1}}
>
> Error in if (A[i] == 2) { : missing value where TRUE/FALSE needed
You should look at ?if and ?ifelse more closely.
--
David Winsemius, MD
West Hartford, CT