-
Notifications
You must be signed in to change notification settings - Fork 44
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Initial commit of read.cross.tidy() #20
Conversation
Great idea! I'll merge it into the devel branch. I'm reserving the master branch for the latest release. |
Cool! I'll integrate it with |
I made some improvements to the original PR:
I wrote a few simple tests to ensure a cross created with
I didn't want to muck up your existing testing infrastructure so I kept my tests in a separate branch, which isn't part of this PR. |
Thanks, @aaronwolen! I've incorporated your code into the devel branch. I also added a test and added a small bit to the documentation for |
Hi Karl,
This PR adds support for a new
read.cross()
format I'm calling "tidy" because genotype, phenotype and map data are stored in separate files using a standarddata.frame
-like format:Phenotypes:
Genotypes:
Map:
The advantage of this format is each file can be easily loaded into R with
read.table()
for analysis/visualization outside of R/qtl. For projects using R/qtl I usually maintain two sets of genotype/phenotype files: 1 for general analysis and 1 set formatted for R/qtl. Adding something likeread.cross.tidy()
would allow me to avoid that redundancy, so that's my selfish motivation behind this PR.I'd call it draft code at this point; it works but lacks the extensive data checks found in the other
read.cross.*()
functions. I can bring it up to parity but wanted to gauge your level interest before proceeding.