Hi Dennis 
 
Thank you so much it helped me to go a step ahead. Regarding comparisions,
here is what I want to do. 
 
If value of imarkP1 = 22, imarkP2 = 11, and mark1= 12 then the value of
mark1 should be coded as 1
                   (means that all three conditions must be satified to get
a code "1") 
                   imarkP1 =  22, imarkP2= 11, and mark1= 22 then the value
mark should be coded as 2
                   (imarkP1 = 22, imparkP2=11, and mark1= 11 then the value
of mark should be coded as 0) will go to else 
                   
                   imarkP1= 33, imarkP2= 14, and mark=13 the value of mark1
should be coded as 0
                   imarkP1=33, imarkP2=14, and mark=34, the value of mark1
should be coded as 1
                   
                    ..... I do have more such condtions 
 
I tried the following for the first conditon listed above, but could not get
the result I want. I do not know what is wrong. 
 
Ifelse (imarkP1==22|imarkP2==11|mark1==12,1,0)
 
I could not go forward..............
 
Thank you so much for the help.
 
Best regards;
 
Umesh R 
 
 
 

  _____  

From: Dennis Murphy [mailto:djmuser@gmail.com] 
Sent: Friday, February 18, 2011 12:28 AM
Cc: r-help@r-project.org
Subject: Re: [R] recoding a data in different way: please help


Hi:

This is as far as I could get:

df <- read.table(textConnection("
 Individual      Parent1  Parent2         mark1   mark2
 1        0       0       12      11
 2        0       0       11      22
 3        0       0       13      22
 4        0       0       13      11
 5        1       2       11      12
 6        1       2       12      12
 7        3       4       11      12
 8        3       4       13      12
 9        1       4       11      12
 10       1       4       11      12"), header = TRUE)
df2 <- transform(df, Parent1 = replace(Parent1, Parent1 == 0, NA),
                 Parent2 = replace(Parent2, Parent2 == 0, NA))
df2 <- transform(df2, imark1p1 = df2$mark1[df2$Parent1],       # Parent 1's
mark1
                      imark1p2 = df2$mark1[df2$Parent2],
# Parent 2's mark1
                      imark2p1 = df2$mark2[df2$Parent1],
# Parent 1's mark2
                      imark2p2 = df2$mark2[df2$Parent2])
# Parent 2's mark2

I created df2 so as not to overwrite the original in case of a mistake. At
this point, you have several sets of vectors that you can compare; e.g.,
mark1 with imark1p1 and imark1p2. Like Josh, I couldn't make heads or tails
out of what these logical tests were meant to output, but perhaps this gives
you a broader template with which to work. At this point, you can probably
remove the rows corresponding to the parents. I believe ifelse() is your
friend here - it can perform logical tests in a vectorized fashion. As long
as the tests are consistent from one individual to the next, it's likely to
be an efficient route.

HTH,
Dennis


On Thu, Feb 17, 2011 at 6:21 PM 

Dear R users

The following question looks simple but I have spend alot of time to solve
it. I would highly appeciate your help.

I have following dataset from family dataset :

Here we have individuals and their two parents and their marker scores
(marker1, marker2,....and so on). 0 means that their parent information not
available.


Individual      Parent1  Parent2         mark1   mark2
1        0       0       12      11
2        0       0       11      22
3        0       0       13      22
4        0       0       13      11
5        1       2       11      12
6        1       2       12      12
7        3       4       11      12
8        3       4       13      12
9        1       4       11      12
10       1       4       11      12

I want to recode mark1 and other mark2.....and so on column by looking
indvidual parent (Parent1 and Parent2).

For example

Take case of Individual 5, who's Parent 1 is 1 (has mark1 score 12) and
Parent 2 is 2 (has mark1 score 11). Individual 5 has mark1 score 11. Suppose
I have following condition to recode Individual 5's mark1 score:

For mark1 variable, If Parent1 score "11" and Parent2 score "22" and recode
indvidual 5's score, "12"=1, else 0
                                   If Parent1 score "12" and Parent2 score
"22" and recode individual 5's score, "22"=1, "12"= 0.5, else 0
                                   .........................more conditions

Similarly the pointer should move from individual 5 to n individuals at the
end of the file.

 Thank you in advance

Umesh R





       [[alternative HTML version deleted]]

______________________________________________
R-help@r-project.org mailing list
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.



  _____  

No virus found in this message.
Checked by AVG - www.avg.com



	[[alternative HTML version deleted]]

