jayoung / mktests_jy Goto Github PK
View Code? Open in Web Editor NEWR functions to perform McDonald-Kreitman tests
R functions to perform McDonald-Kreitman tests
some plots do NOT have anything in gray for the polymorphisms.
it seems like it fails when the alignment contains Ns, but it's fine once the Ns are removed
Add methods tab to spreadsheet to capture parameters and warnings, perhaps also a tab to name the seqs in each group
it could get really cluttered. one methods tab PER analysis? one seqs tab PER analysis? (we already have one sites tab per analysis)
double-check code can handle upper and lower case alignments
should be just making everything uppercase before I even start
To help troubleshooting, make a trim function, to consider only some portions of the alignment (and it might be useful in general, e.g. to look only at some domains while retaining original alignment coordinates)
function stops with an error when all seqs from one population have a stop codon. Would be nice to say WHICH POPULATION the error comes from
they have different numbers of columns so we cannot rbind
would be nice to round more columns.
I did it for the unpolarized results (asked Excel to SHOW the rounded values, didn't actually round them) but I didn't do it for the polarized results
how am I using the pop1alias and pop2alias values? I thought those would go in colnames of the excel export, but maybe not
add a check for situations where pop1 / pop2 / outgroups have seqnames in common. That's a user error.
pop aliases aren't always used in Excel output
I wrote this in MKfunctions.R: "for now we are treating all outgroups (e.g. yak, sec) as one big group"
is that true? I thought I allowed the possibility of a hierarchical outgroup list
in any case, clarify in the README.md how to deal with outgroups
check seqlengths are the same for all seqs in an alignment
still figuring it out.
see scripts/doMKtests_exampleProblemCodonPolarizing.R
add this discussion to README.md
Ching-Ho takes a different approach when polarizing:
use multiple outgroup species (about 5? includes eugracilis), reconstruct the mel-sim ancestor. Use the ancestor instead of sim (or instead of mel) in my R scripts to run the unpolarized code. This is equivalent to getting the mel-branch-only MK result.
he uses MEGA for this: make a tree from the alignment (nucleotide level, not codon level), reconstruct ancestors, and it will spit out the most likely nucleotide at each site. Alternatively, you could also ask it to tell you probabilities, and perhaps replace any very uncertain positions with N.
he's also curious about IQtree to reconstruct ancestors. PAML is another possibility.
A declarative, efficient, and flexible JavaScript library for building user interfaces.
๐ Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
An Open Source Machine Learning Framework for Everyone
The Web framework for perfectionists with deadlines.
A PHP framework for web artisans
Bring data to life with SVG, Canvas and HTML. ๐๐๐
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
Some thing interesting about web. New door for the world.
A server is a program made to process requests and deliver data to clients.
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
Some thing interesting about visualization, use data art
Some thing interesting about game, make everyone happy.
We are working to build community through open source technology. NB: members must have two-factor auth.
Open source projects and samples from Microsoft.
Google โค๏ธ Open Source for everyone.
Alibaba Open Source for everyone
Data-Driven Documents codes.
China tencent open source team.