On Nov 29, 2010, at 1:36 PM, Jim Moon wrote:
Thank you for the suggestion, Bill. The result is not quite what I
would like. Here's sample code for you or anyone else who may be
interested:
Al1 = c('A','C','C','C')
Al2 = c('G','G','G','T')
Freq1 = c(0.0078,0.0567,0.9434,0.9908)
MAF = c(0.0078,0.0567,0.0566,0.0092)
m1 = data.frame(Al1=Al1, Al2=Al2,Freq1=Freq1,MAF=MAF,major_allele='')
m1
Al1 Al2 Freq1 MAF major_allele
1 A G 0.0078 0.0078
2 C G 0.0567 0.0567
3 C G 0.9434 0.0566
4 C T 0.9908 0.0092
Using the suggestion involving "with()" (I swapped Al1 and Al2 from
before, but this does not affect the nature of the output):
m1$major_allele <- with(m1, ifelse(Freq1==MAF, Al2, Al1));m1
Al1 Al2 Freq1 MAF major_allele
I suspect that you have just been bitten by the data.frame-
stringsAsFactors=TRUE crocodile. Since you are comparing floating
point numbers, you are also wading in rivers where floating-point
crocodiles are also hungry and searching out their next victim.
--
David.
1 A G 0.0078 0.0078 1
2 C G 0.0567 0.0567 1
3 C G 0.9434 0.0566 2
4 C T 0.9908 0.0092 2
The output I desire is:
Al1 Al2 Freq1 MAF major_allele
1 A G 0.0078 0.0078 G
2 C G 0.0567 0.0567 G
3 C G 0.9434 0.0566 C
4 C T 0.9908 0.0092 C
Jim
-----Original Message-----
From: William Dunlap [mailto:wdun...@tibco.com]
Sent: Monday, November 29, 2010 10:02 AM
To: Jim Moon
Subject: RE: [R] how to use by() ?
m1$major_allele <- with(m1, ifelse(Freq1==MAF, Al1, Al2))
Bill Dunlap
Spotfire, TIBCO Software
wdunlap tibco.com
-----Original Message-----
From: r-help-boun...@r-project.org
[mailto:r-help-boun...@r-project.org] On Behalf Of Jim Moon
Sent: Monday, November 29, 2010 9:44 AM
To: r-help@r-project.org
Subject: [R] how to use by() ?
Hello, All!
How might one accomplish this using the by() function?
m1 is a data frame.
# populate column "m1$major_allele"
for ( i in 1:length(m1$major_allele)) {
if ( m1$Freq1[i] == m1$MAF[i]){
m1$major_allele[i] = m1$Al1[i]
}
else{
m1$major_allele[i] = m1$Al2[i]
}
}
Jim
[[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.
______________________________________________
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.
David Winsemius, MD
West Hartford, CT
______________________________________________
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.