dreichlab / admixtools Goto Github PK
View Code? Open in Web Editor NEWTools test whether admixture occurred and more
Tools test whether admixture occurred and more
ADMIXTOOLS version 8.0.2 9/06/24 (for Linux and Mac) See README.INSTALL for installation info. The ADMIXTOOLS package implements 5 methods described in Patterson et al. (2012) Ancient Admixture in Human History. Details of the methods and algorithm can be found in this paper. A user guide for qpAdm is now available in the supplementary materials for "Assessing the Performance of qpAdm: A Statistical Tool for Studying Population Admixture" by Harney et al. (2020). https://gsajournals.figshare.com/articles/dataset/Supplemental_Material_for_Harney_et_al_2020/13403225?file=26425355 https://doi.org/10.25386/genetics.13403225.v2 The package contains 6 programs: convertf: See README.CONVERTF for documentation of programs for converting file formats. qp3Pop: See README.3PopTest for details of running f_3 test. This test can be used as a format test of admixture with 3 populations. qpBound: See README.3PopTest for details of running qpBound. This test can be used for estimating bounds on the admixture proportions, given 3 populations (2 reference and one target). qpDstat: See README.Dstatistics for details of running D-statistics. This is a formal test of admixture with 4 populations. qpF4Ratio: See README.F4RatioTest for details of running F4 ratio estimation. This program computes the admixture proportion by taking the ratio of two f4 tests. rolloff: See README.ROLLOFF/ README.ROLLOFF_OUTPUT for details for running rolloff. This program can be used for dating admixture events. Executables and source code: ---------------------------- All C executables are in the bin/ directory. We have placed source code for all C executables in the src/ directory, for users who wish to modify and recompile our programs. For example, to recompile the programs, type "cd src" "make clobber" "make install" If you are building on a Mac, you will need gsl and openblas installed. "brew install gsl" "brew install openblas" "brew install argp" make using Makefile.mac in src If these packages are not in standard directories, you can specify the appropriate include and library directories with the CFLAGS and LDFLAGS make variables. For example, on the Harvard Medical School O2 cluster, the command is: 'make CFLAGS="-I/n/app/openblas/0.2.19/include -I/n/app/gsl/2.3/include" LDFLAGS="-L/n/app/openblas/0.2.19/lib -L/n/app/gsl/2.3/lib/"' If you have issues with missing lapacke symbols, for example "undefined reference to `LAPACKE_dlange'", run make with the corresponding additional libraries linked: 'make LDLIBS="-llapacke"' on Linux Mint 18. Similarly for Ubuntu, for "undefined reference to dspev_" 'make LDLIBS="-llapack"' For questions about building this software: Matthew Mah <[email protected]> If you have trouble compiling and running our code, try compiling and running the examples in the examples/ directory. Download the example datasets from https://reich.hms.harvard.edu/sites/reich.hms.harvard.edu/files/inline-files/AdmixTools_Example_Data.tar_.gz and untar in the root AdmixTools directory, creating a subdirectory called ./data. "cd examples" "./mklog" If you are unable to run the examples successfully, please contact your system administrator for help, as this is probably systems issue which is beyond our scope. Nick Patterson <[email protected]> 1) version 7.0 has numerous upgrades. a) Two new executables --qpfstats qpfmv allow precomputation of f-statistic basis. This can greatly reduce computation costs. b) qpAdm, qpWave, qpGraph support qpfstats output as input. *** This is a much improved way of running with allsnps: YES. *** c) A new experimental feature of qpGraph (halfscore: YES) allows comparison of 2 phylogenies + a (weak) goodness of fit score. Be careful if running with a large number of populations and consider reducing block size say blgsize: .005 Version 7.0.2 has important bugfixes to qpfstats. See README.qpfstats 2) Note that several of the new ideas implemented in version 7.0 were developed collaboratively with Robert Maier, who has implemented them along with the great majority of other ADMIXTOOLS functionality in R: See https://github.com/uqrmaie1/admixtools Executables run fast, and it has features not available in this C version, such as interactive exploration of graph phylogenies. A manuscript describing the algorithmic ideas and providing documentation of the methods is in preparation. *** Fairly NEW *** Lightweight onlline documentation added, thanks to Eric Deveaud <executable> or <executable> -h to get brief documentation or *** Fairly NEW *** Alter number of chromosomes: numchrom: <zzz> zzz should be the autosome number (default 22 -- the number for humans) Custom block numbers (for jackknife) blockname: <bbb> bbb should contain a list of snps 1 / line followed by a block number (integer) block number should be at least 1. -1 -> snp ignored. If this option is used snps not in list will be ignored. *** New data format *** Version 8.0.0 supports a new data format transpose_geno (or tgeno) See ./transpose_info and ./convertf/README The key code for this was written by Matthew Mah Version 8.0.1 is a minor bugfix release. Version 8.0.2 is a minor bugfix release, affecting transpose packed files > 2GB. ---------------------------- SOFTWARE COPYRIGHT NOTICE AGREEMENT This software and its documentation are copyright (2010) by Harvard University and The Broad Institute. All rights are reserved. This software is supplied without any warranty or guaranteed support whatsoever. Neither Harvard University nor The Broad Institute can be responsible for its use, misuse, or functionality. The software may be freely copied for non-commercial purposes, provided this copyright notice is retained.
Hello,
I've got a problem in my parameter, in the log output file it begin by "warning: dubious parameter"
I can't find where is the problem. I got the result at the end for qp3pop, but don't know if it's serious problem this warning.
Maybe someone can help....
the parfile :
parameter file: parqp3
DIR: /home/mferrand/
SSS: ALL
genotypename: /home/mferrand/ALL.geno
snpname: /home/mferrand/ALL.snp
indivname: /home/mferrand/ALL.ind
popfilename: /home/mferrand/list_qp3test.txt
I have my 3 files in the good format (I hope)
ALL.geno
1000000
1000000
0001000
etc...
ALL.snp
N-0001 1 0.31 10015031
N-0002 1 0.31 10039272
N-0003 1 0.31 10048150
etc...
ALL.ind
"N9" "0" "N9"
"N5" "0" "N5"
"D1" "0" "D1"
"T1" "0" "T1"
"D22" "0" "D22"
"N1" "0" "N1"
"Col0" "0" "Col0"
**the popfilename: ** list_qp3test.txt :
"T1" "N1" "D1"
"D22" "N9" "D1"
"N1" "N9" "D1"
etc...
**then the logfile give = **
parameter file: parqp3.txt
**warning: dubious parameter, please check the parameter name parameter
THE INPUT PARAMETERS
PARAMETER NAME: VALUE
parameter file: parqp3Pop
DIR: /home/mferrand/
SSS: ALL
genotypename: /home/mferrand/ALL.geno
snpname: /home/mferrand/ALL.snp
indivname: /home/mferrand/ALL.ind
popfilename: /home/mferrand/list_qp3test.txt
qp3Pop version: 204
nplist: 56
number of blocks for block jackknife: 68
snps: 54984
Source 1 Source 2 Target f_3 std. err Z SNPs
result: "T1" "N1" "D1" -0.196412 0.015795 -12.435 29533
result: "D22" "N9" "D1" -0.234678 0.008221 -28.547 26423
result: "N1" "N9" "D1" -0.196241 0.018510 -10.602 29550
Etc...
Thanks in advance !
I have previously run qpdstat with no problem. Now with a new dataset I got the following error:
fatalx:
(ineigenstrat) mismatch line length 478 5253
Aborted (core dumped)
And the output file contains this error:
/home/d/ADMIXTOOLS1/qpDstat: parameter file: pardstat1
##PARAMETER NAME: VALUE
indivname: MASTER_HiCov27.ind
snpname: MASTER_HiCov27.snp
genotypename: MASTER_HiCov27.geno
popfilename: list_dstat
(ineigenstrat) bad line 1019420 ::1121212121110211
Any ideas as to what the problem is?
Thanks
Hi All,
I'm wondering what is the scale of f2 in qpgraph output? I set outgroup as NULL to turn off normalization but the resulting f2 seems to be normalized by heterozygosity somewhere. I tried to compute f2 and Fst myself, and my Fst agrees with qpgraph but f2 doens't.
I'm very grateful for the help.
Chi-Chun
Hi All,
I have problem running qpDstat.
I am using this ((/home/apps/AdmixTools-master/bin/qpDstat -p parfile.par [-l lo] [-h hi] > GenomeD2)) in my terminal and after a while the run terminates. I cannot see any error except the word (killed).
I have done it for several times but still get the same word and the output file showing only the parameters I have used which you can see below:
/home/apps/AdmixTools-master/bin/qpDstat: parameter file: parfile.par
##PARAMETER NAME: VALUE
genotypename: /home/foo/ABBA-BABA/GenomeD.ped.eigenstratgeno
snpname: /home/foo/ABBA-BABA/GenomeD.ped.snp
indivname: /home/foo/ABBA-BABA/GenomeD.ped.ind
poplistname: /home/foo/ABBA-BABA/pop_list
Any kind of help will be appreciated,
Thanks,
Ahmed
Hi @bumblenick
I want to know whether the thinning process is necessary before running admixtools
when using high density SNPs. I just care about the accurate of the results.
I have run F3
, F4
and D-statistics
using about 40M SNPs without pruning and 13M SNPs with pruning by LD. When running with 40M SNPs, it also runs fast, and the result is almost consistent with the thinned SNPs. So I want to know, If I just want to run above statistics for a small number of population, can I get a more reasonable result when using all SNPs?
Best
Zhuqing
I have problem installing the software with the following environment:
macOS 10.12.6
openblas 0.2.20
/usr/local/Cellar/gsl/2.4
Configured with: --prefix=/Applications/Xcode.app/Contents/Developer/usr --with-gxx-include-dir=/usr/include/c++/4.2.1
Apple LLVM version 8.1.0 (clang-802.0.42)
Error message:
cc -L./nicksrc -L/usr/local/opt/openblas/lib -L/usr/local/opt/gsl/lib qpff3base.o nicksrc/libnick.a qpgsubs.o qpsubs.o mcio.o admutils.o egsubs.o regsubs.o ldsubs.o -lgsl -lopenblas -lm -lnick -o qpff3base
cc -c -g -p -Wimplicit -I./ -I./nicksrc -I/usr/local/opt/openblas/include -I/usr/local/opt/gsl/include -c -o rolloffp.o rolloffp.c
clang: warning: argument unused during compilation: '-p' [-Wunused-command-line-argument]
rolloffp.c:789:23: error: non-void function 'cntit1' should return a value [-Wreturn-type]
if (cupt -> ignore) return ;
^
rolloffp.c:808:23: error: non-void function 'cntit2' should return a value [-Wreturn-type]
if (cupt -> ignore) return ;
^
rolloffp.c:809:24: error: non-void function 'cntit2' should return a value [-Wreturn-type]
if (cupt2 -> ignore) return ;
^
3 errors generated.
make: *** [rolloffp.o] Error 1
Hi,
I could not find the annotated log file for qpAdm in .../examples/qpAdm.log.
Is it in a different location?
Thank you
Hi,
I have two ancient samples (7X and 13X) . In NJ tree , they get together with groupA . But in Outgroup f3 statistic ,the groupB's f_3 value is higher than gourpA ,How to explain the result ?
The NJtree may like this:
http://i2.muimg.com/4851/d715cb8fb65cd020.png
The output :
result: Ancient groupB outgroup 0.235691 0.001944 121.244 12220407
result: Ancient groupA outgroup 0.231413 0.001914 120.894 11370158
Thanks!
deleted
Regards
Hi there,
Would it be possible to get the AdmixTools/data/ directory uploaded to the git repo? The log files in AdmixTools/examples/ are referencing ../data/allmap, and it would be very useful to be able to see the input files and run the examples for troubleshooting purposes.
Thanks!
-Steve
Hi,
In qpF4ratio, alpha = f4(A,O; X,C)/ f4(A,O; B, C). Is it ok that i use the same population for A and B?
Thanks a lot!
Dear @bumblenick
in D-stastics README file, what's the meaning of "If the Z-score is +ve, then the gene flow occured either between W and Y or X and Z
If the Z-score is -ve, then the gene flow occured either between W and Z or X and Y."
and I got the result : W X Y Z 0.0027(Dstat) 1.496337525(Z score) 335725(BABA) 7196699(ABBA), so W and Y or X and Z had gene flow? thankyou
@bumblenick
Such as Fst, Gst, G'st, G''st, Rst, Фst etc.
Hello, this program is very good but it'd very helpful if it could support more differentiation analysis methods. I think especially useful would be ASD(Allele Sharing Distance), TVD(Total Variation Distance) and Est. since as far as I know no programs support these statistics currently in easy to use form.
Total Variation Difference is described here
https://www.ncbi.nlm.nih.gov/pmc/articles/PMC4915815/
https://www.ncbi.nlm.nih.gov/pubmed/25788095
Asd
https://www.ncbi.nlm.nih.gov/pmc/articles/PMC2869072/
Est
http://journals.plos.org/plosone/article?id=10.1371/journal.pone.0160413
It shows too few snps; numsnps: 0 first and then shows numsnps as 753k. Any idea what might be wrong?
## rolloff. Version 1100
parameter file: ped-eigen.par
genotypename: ./files/chr21_eur_natam_bgi_hli.geno
snpname: ./files/chr21_eur_natam_bgi_hli.snp
indivname: ./files/chr21_eur_natam_bgi_hli.ind
poplistname: ./files/pop.ref
admixlist: ./files/pop.target
binsize: 0.001
maxdis: 0.8
seed: 7
runmode: 1
zdipcorrmode: YES
checkmap: YES/
seed: 7
chithresh: 6.000
./files/chr21_eur_natam_bgi_hli.snp: genetic distance set from physical distance
snp order check fail; snp list not ordered: ./files/chr21_eur_natam_bgi_hli.snp (processing continues) 1 10113 1011278
zzz 0 394075
snp order check fail; snp list not ordered: ./files/chr21_eur_natam_bgi_hli.snp (processing continues) 1 10204 1020428
zzz 1 394076
snp order check fail; snp list not ordered: ./files/chr21_eur_natam_bgi_hli.snp (processing continues) 1 10214 1021403
zzz 2 394077
snp order check fail; snp list not ordered: ./files/chr21_eur_natam_bgi_hli.snp (processing continues) 1 10388 1038818
zzz 3 394078
snp order check fail; snp list not ordered: ./files/chr21_eur_natam_bgi_hli.snp (processing continues) 1 10398 1039813
zzz 4 394079
snp order check fail; snp list not ordered: ./files/chr21_eur_natam_bgi_hli.snp (processing continues) 1 10548 1054842
zzz 5 394080
snp order check fail; snp list not ordered: ./files/chr21_eur_natam_bgi_hli.snp (processing continues) 1 10559 1055892
zzz 6 394081
snp order check fail; snp list not ordered: ./files/chr21_eur_natam_bgi_hli.snp (processing continues) 1 10775 1077546
zzz 7 394082
snp order check fail; snp list not ordered: ./files/chr21_eur_natam_bgi_hli.snp (processing continues) 1 11097 1109721
zzz 8 394083
genotypename: ./files/chr21_eur_natam_bgi_hli.geno
fatalx:
too few snps; numsnps: 0
valid snps: 753136
group 0 EUR
group 1 AMR
number admixed: 120 number of references: 2
numsnps: 753136 numindivs: 319
I am getting and error saying: "Segmentation fault" with a dataset of 20 million SNPs, and I didn't encounter this error before with smaller data sets. Is it because of the size of the file? I was checking the source code and I couldn't find anything related with segmentation...
Dear @bumblenick
I have a few questions about the results from F4-ratio (qpF4ratio) and D-statistic (qpDstat). Can I detect introgression between two populations using F4-ratio on a genome-wide scale? I ran these two methods for a same dataset, as a result, the qpF4ratio detected EUR has about 1.1% introgression from IBEX1, but the qpDstat told me the IBEX1 share more derived allele with AFR. the topology among these five populations is following,
results from qpF4ratio version: 300
result: BEZ2 Outgroup EUR IBEX1 : BEZ2 Outgroup AFR IBEX1 0.988603 0.000951 1039.104
result: BEZ2 Outgroup AFR IBEX1 : BEZ2 Outgroup EUR IBEX1 1.011527 0.000973 1039.104
results from qpDstat version: 701
result: Outgroup IBEX1 EUR AFR 0.0045 0.001616 2.816 39371 39014 5123960
Can you help interpret this contradict results, many thanks!
Best Wishes
zhuqing
I was trying to install v5.1 on a ubuntu system and I kept getting this error:
cc -L./nicksrc qpAdm.o nicksrc/libnick.a qpsubs.o mcio.o ldsubs.o admutils.o egsubs.o regsubs.o f4rank.o eigsubs.o eigx.o -lgsl -lopenblas -lm -lnick -o qpAdm
eigx.o: In functioneigx_': /home/owens/bin/AdmixTools-5.1/src/eigx.c:94: undefined reference to
dspev_'
eigx.o: In functioneigxv_': /home/owens/bin/AdmixTools-5.1/src/eigx.c:118: undefined reference to
dspev_'
eigx.o: In functioncdc_': /home/owens/bin/AdmixTools-5.1/src/eigx.c:136: undefined reference to
dpotrf_'
eigx.o: In functioninverse_': /home/owens/bin/AdmixTools-5.1/src/eigx.c:173: undefined reference to
dgetrf_'
/home/owens/bin/AdmixTools-5.1/src/eigx.c:180: undefined reference todgetri_' eigx.o: In function
solve_':
/home/owens/bin/AdmixTools-5.1/src/eigx.c:206: undefined reference todgetrf_' /home/owens/bin/AdmixTools-5.1/src/eigx.c:212: undefined reference to
dgetrs_'
eigx.o: In functiongeneigsolve_': /home/owens/bin/AdmixTools-5.1/src/eigx.c:230: undefined reference to
dsygv_'
collect2: error: ld returned 1 exit status
This happened despite installing and updating GSL, openblas, gfortran, and lapack.
Based on this post about a related program (DReichLab/EIG#8) I tried
make all LDLIBS="-llapack"
This seemed to fix the error, and it installed fine.
Including a note about this might be useful in the install readme, and I'm posting this issue to help anyone else with the same issue.
Hi, I suppose the value of F4RatioTest is between 0 and 1. It's weird.
The Makefile contains a target for qpWave, but there are no sources for it.
Hi all,
I got problems during compiling. Anyone know how to solve this problem?
liu194@DeepPhylo:~/AdmixTools/src$ make all
mkdir -p /home/liu194/AdmixTools/src/admixlib
mkdir -p /home/liu194/AdmixTools/src/admixtables
mkdir -p /home/liu194/AdmixTools/src/admixinclude
mkdir -p /home/liu194/AdmixTools/src/../bin
cp .h /home/liu194/AdmixTools/src/admixinclude
cp nicksrc/.h /home/liu194/AdmixTools/src/admixinclude
ar -r libnick.a strsubs.o sortit.o vsubs.o statsubs.o linsubs.o getpars.o xsearch.o gauss.o gds.o
ranlib libnick.a
cp libnick.a /home/liu194/AdmixTools/src/admixlib/nicklib.a
gcc -I/home/liu194/AdmixTools/src/admixinclude -g -lm -o qp3Pop qp3Pop.o qpsubs.o mcio.o ldsubs.o admutils.o egsubs.o regsubs.o /home/liu194/AdmixTools/src/admixlib/nicklib.a
qpsubs.o: In function getpdata': /home/liu194/AdmixTools/src/qpsubs.c:143: undefined reference to
sqrt'
qpsubs.o: In function getcolx': /home/liu194/AdmixTools/src/qpsubs.c:336: undefined reference to
sqrt'
qpsubs.o: In function dofancy': /home/liu194/AdmixTools/src/qpsubs.c:401: undefined reference to
sqrt'
qpsubs.o: In function yll': /home/liu194/AdmixTools/src/qpsubs.c:450: undefined reference to
log'
qpsubs.o: In function ridoutlier': /home/liu194/AdmixTools/src/qpsubs.c:713: undefined reference to
sqrt'
qpsubs.o: In function crho': /home/liu194/AdmixTools/src/qpsubs.c:1683: undefined reference to
sqrt'
qpsubs.o: In function wjackestx': /home/liu194/AdmixTools/src/qpsubs.c:2709: undefined reference to
sqrt'
qpsubs.o: In function wjackvestx': /home/liu194/AdmixTools/src/qpsubs.c:3216: undefined reference to
sqrt'
qpsubs.o: In function printnorm': /home/liu194/AdmixTools/src/qpsubs.c:3618: undefined reference to
sqrt'
mcio.o: In function nextmesh': /home/liu194/AdmixTools/src/mcio.c:701: undefined reference to
ceil'
mcio.o: In function getgenos': /home/liu194/AdmixTools/src/mcio.c:1439: undefined reference to
ceil'
mcio.o: In function outpack': /home/liu194/AdmixTools/src/mcio.c:2336: undefined reference to
ceil'
mcio.o: In function ineigenstrat': /home/liu194/AdmixTools/src/mcio.c:2494: undefined reference to
ceil'
mcio.o: In function inpack': /home/liu194/AdmixTools/src/mcio.c:2727: undefined reference to
ceil'
mcio.o:/home/liu194/AdmixTools/src/mcio.c:3298: more undefined references to ceil' follow mcio.o: In function
killhir2':
/home/liu194/AdmixTools/src/mcio.c:4175: undefined reference to sqrt' mcio.o: In function
inpack2':
/home/liu194/AdmixTools/src/mcio.c:4335: undefined reference to ceil' mcio.o: In function
genoopenit':
/home/liu194/AdmixTools/src/mcio.c:4689: undefined reference to ceil' ldsubs.o: In function
zdip0':
/home/liu194/AdmixTools/src/ldsubs.c:488: undefined reference to sqrt' ldsubs.o: In function
calccorr':
/home/liu194/AdmixTools/src/ldsubs.c:574: undefined reference to sqrt' /home/liu194/AdmixTools/src/ldsubs.c:575: undefined reference to
sqrt'
/home/liu194/AdmixTools/src/ldsubs.c:585: undefined reference to log' /home/liu194/AdmixTools/src/ldsubs.c:586: undefined reference to
sqrt'
admutils.o: In function xxlog2': /home/liu194/AdmixTools/src/admutils.c:527: undefined reference to
log'
admutils.o: In function kurtosis': /home/liu194/AdmixTools/src/admutils.c:1020: undefined reference to
sqrt'
regsubs.o: In function regressit': /home/liu194/AdmixTools/src/regsubs.c:73: undefined reference to
log'
regsubs.o: In function regressitall': /home/liu194/AdmixTools/src/regsubs.c:86: undefined reference to
pow'
regsubs.o: In function calcgh': /home/liu194/AdmixTools/src/regsubs.c:338: undefined reference to
sqrt'
regsubs.o: In function zlike': /home/liu194/AdmixTools/src/regsubs.c:368: undefined reference to
log'
/home/liu194/AdmixTools/src/regsubs.c:368: undefined reference to log' regsubs.o: In function
hgrad':
/home/liu194/AdmixTools/src/regsubs.c:618: undefined reference to pow' /home/liu194/AdmixTools/src/admixlib/nicklib.a(vsubs.o): In function
vsqrt':
/home/liu194/AdmixTools/src/nicksrc/vsubs.c:75: undefined reference to sqrt' /home/liu194/AdmixTools/src/admixlib/nicklib.a(vsubs.o): In function
vlog':
/home/liu194/AdmixTools/src/nicksrc/vsubs.c:106: undefined reference to log' /home/liu194/AdmixTools/src/admixlib/nicklib.a(vsubs.o): In function
vexp':
/home/liu194/AdmixTools/src/nicksrc/vsubs.c:126: undefined reference to exp' /home/liu194/AdmixTools/src/admixlib/nicklib.a(vsubs.o): In function
corr':
/home/liu194/AdmixTools/src/nicksrc/vsubs.c:427: undefined reference to sqrt' /home/liu194/AdmixTools/src/admixlib/nicklib.a(vsubs.o): In function
corrx':
/home/liu194/AdmixTools/src/nicksrc/vsubs.c:456: undefined reference to sqrt' /home/liu194/AdmixTools/src/admixlib/nicklib.a(vsubs.o): In function
nnint':
/home/liu194/AdmixTools/src/nicksrc/vsubs.c:780: undefined reference to lrint' /home/liu194/AdmixTools/src/admixlib/nicklib.a(vsubs.o): In function
rndit':
/home/liu194/AdmixTools/src/nicksrc/vsubs.c:1244: undefined reference to nearbyint' /home/liu194/AdmixTools/src/admixlib/nicklib.a(vsubs.o): In function
NPlog2':
/home/liu194/AdmixTools/src/nicksrc/vsubs.c:1352: undefined reference to log' /home/liu194/AdmixTools/src/admixlib/nicklib.a(vsubs.o): In function
logfac':
/home/liu194/AdmixTools/src/nicksrc/vsubs.c:1364: undefined reference to lgamma' /home/liu194/AdmixTools/src/admixlib/nicklib.a(vsubs.o): In function
log2fac':
/home/liu194/AdmixTools/src/nicksrc/vsubs.c:1418: undefined reference to lgamma' /home/liu194/AdmixTools/src/admixlib/nicklib.a(vsubs.o): In function
addlog':
/home/liu194/AdmixTools/src/nicksrc/vsubs.c:1441: undefined reference to exp' /home/liu194/AdmixTools/src/nicksrc/vsubs.c:1442: undefined reference to
log'
/home/liu194/AdmixTools/src/admixlib/nicklib.a(vsubs.o): In function ipow2': /home/liu194/AdmixTools/src/nicksrc/vsubs.c:1476: undefined reference to
pow'
/home/liu194/AdmixTools/src/admixlib/nicklib.a(vsubs.o): In function pow10': /home/liu194/AdmixTools/src/nicksrc/vsubs.c:1482: undefined reference to
exp'
/home/liu194/AdmixTools/src/admixlib/nicklib.a(vsubs.o): In function vpow10': /home/liu194/AdmixTools/src/nicksrc/vsubs.c:1491: undefined reference to
exp'
/home/liu194/AdmixTools/src/admixlib/nicklib.a(vsubs.o): In function vlog10': /home/liu194/AdmixTools/src/nicksrc/vsubs.c:1499: undefined reference to
log10'
/home/liu194/AdmixTools/src/admixlib/nicklib.a(vsubs.o): In function hlife': /home/liu194/AdmixTools/src/nicksrc/vsubs.c:1934: undefined reference to
log'
/home/liu194/AdmixTools/src/admixlib/nicklib.a(vsubs.o): In function isprime': /home/liu194/AdmixTools/src/nicksrc/vsubs.c:2222: undefined reference to
sqrt'
/home/liu194/AdmixTools/src/admixlib/nicklib.a(statsubs.o): In function nordis': /home/liu194/AdmixTools/src/nicksrc/statsubs.c:57: undefined reference to
exp'
/home/liu194/AdmixTools/src/nicksrc/statsubs.c:58: undefined reference to sqrt' /home/liu194/AdmixTools/src/admixlib/nicklib.a(statsubs.o): In function
ntail':
/home/liu194/AdmixTools/src/nicksrc/statsubs.c:86: undefined reference to erfc' /home/liu194/AdmixTools/src/nicksrc/statsubs.c:92: undefined reference to
exp'
/home/liu194/AdmixTools/src/nicksrc/statsubs.c:93: undefined reference to sqrt' /home/liu194/AdmixTools/src/admixlib/nicklib.a(statsubs.o): In function
zzprob':
/home/liu194/AdmixTools/src/nicksrc/statsubs.c:113: undefined reference to sqrt' /home/liu194/AdmixTools/src/nicksrc/statsubs.c:113: undefined reference to
log'
/home/liu194/AdmixTools/src/nicksrc/statsubs.c:116: undefined reference to sqrt' /home/liu194/AdmixTools/src/nicksrc/statsubs.c:119: undefined reference to
log'
/home/liu194/AdmixTools/src/admixlib/nicklib.a(statsubs.o): In function medchi': /home/liu194/AdmixTools/src/nicksrc/statsubs.c:175: undefined reference to
sqrt'
/home/liu194/AdmixTools/src/admixlib/nicklib.a(statsubs.o): In function ks2': /home/liu194/AdmixTools/src/nicksrc/statsubs.c:245: undefined reference to
sqrt'
/home/liu194/AdmixTools/src/admixlib/nicklib.a(statsubs.o): In function probks': /home/liu194/AdmixTools/src/nicksrc/statsubs.c:273: undefined reference to
exp'
/home/liu194/AdmixTools/src/admixlib/nicklib.a(statsubs.o): In function conchiv': /home/liu194/AdmixTools/src/nicksrc/statsubs.c:323: undefined reference to
sqrt'
/home/liu194/AdmixTools/src/admixlib/nicklib.a(statsubs.o): In function z2x2': /home/liu194/AdmixTools/src/nicksrc/statsubs.c:373: undefined reference to
sqrt'
/home/liu194/AdmixTools/src/admixlib/nicklib.a(statsubs.o): In function zprob': /home/liu194/AdmixTools/src/nicksrc/statsubs.c:494: undefined reference to
log'
/home/liu194/AdmixTools/src/admixlib/nicklib.a(statsubs.o): In function setzptable': /home/liu194/AdmixTools/src/nicksrc/statsubs.c:530: undefined reference to
log'
/home/liu194/AdmixTools/src/admixlib/nicklib.a(statsubs.o): In function znewt': /home/liu194/AdmixTools/src/nicksrc/statsubs.c:551: undefined reference to
exp'
/home/liu194/AdmixTools/src/nicksrc/statsubs.c:551: undefined reference to sqrt' /home/liu194/AdmixTools/src/admixlib/nicklib.a(statsubs.o): In function
mleg':
/home/liu194/AdmixTools/src/nicksrc/statsubs.c:609: undefined reference to log' /home/liu194/AdmixTools/src/nicksrc/statsubs.c:617: undefined reference to
log'
/home/liu194/AdmixTools/src/nicksrc/statsubs.c:627: undefined reference to log' /home/liu194/AdmixTools/src/nicksrc/statsubs.c:637: undefined reference to
log'
/home/liu194/AdmixTools/src/admixlib/nicklib.a(statsubs.o): In function psi': /home/liu194/AdmixTools/src/nicksrc/statsubs.c:662: undefined reference to
log'
/home/liu194/AdmixTools/src/admixlib/nicklib.a(statsubs.o):/home/liu194/AdmixTools/src/nicksrc/statsubs.c:725: more undefined references to log' follow /home/liu194/AdmixTools/src/admixlib/nicklib.a(statsubs.o): In function
bessi1':
/home/liu194/AdmixTools/src/nicksrc/statsubs.c:781: undefined reference to exp' /home/liu194/AdmixTools/src/nicksrc/statsubs.c:781: undefined reference to
sqrt'
/home/liu194/AdmixTools/src/admixlib/nicklib.a(statsubs.o): In function logbessi0': /home/liu194/AdmixTools/src/nicksrc/statsubs.c:807: undefined reference to
log'
/home/liu194/AdmixTools/src/nicksrc/statsubs.c:821: undefined reference to log' /home/liu194/AdmixTools/src/nicksrc/statsubs.c:823: undefined reference to
log'
/home/liu194/AdmixTools/src/admixlib/nicklib.a(statsubs.o): In function bessi0': /home/liu194/AdmixTools/src/nicksrc/statsubs.c:862: undefined reference to
exp'
/home/liu194/AdmixTools/src/nicksrc/statsubs.c:862: undefined reference to sqrt' /home/liu194/AdmixTools/src/admixlib/nicklib.a(statsubs.o): In function
li2':
/home/liu194/AdmixTools/src/nicksrc/statsubs.c:916: undefined reference to log' /home/liu194/AdmixTools/src/nicksrc/statsubs.c:916: undefined reference to
log'
/home/liu194/AdmixTools/src/admixlib/nicklib.a(statsubs.o): In function hwstat': /home/liu194/AdmixTools/src/nicksrc/statsubs.c:962: undefined reference to
sqrt'
/home/liu194/AdmixTools/src/admixlib/nicklib.a(statsubs.o): In function bprob': /home/liu194/AdmixTools/src/nicksrc/statsubs.c:978: undefined reference to
log'
/home/liu194/AdmixTools/src/nicksrc/statsubs.c:978: undefined reference to log' /home/liu194/AdmixTools/src/admixlib/nicklib.a(statsubs.o): In function
gammprob':
/home/liu194/AdmixTools/src/nicksrc/statsubs.c:993: undefined reference to log' /home/liu194/AdmixTools/src/nicksrc/statsubs.c:994: undefined reference to
log'
/home/liu194/AdmixTools/src/admixlib/nicklib.a(statsubs.o): In function binlogtail': /home/liu194/AdmixTools/src/nicksrc/statsubs.c:1078: undefined reference to
log'
/home/liu194/AdmixTools/src/admixlib/nicklib.a(statsubs.o):/home/liu194/AdmixTools/src/nicksrc/statsubs.c:1134: more undefined references to log' follow /home/liu194/AdmixTools/src/admixlib/nicklib.a(statsubs.o): In function
xlgamma':
/home/liu194/AdmixTools/src/nicksrc/statsubs.c:1168: undefined reference to lgamma' /home/liu194/AdmixTools/src/nicksrc/statsubs.c:1173: undefined reference to
log'
/home/liu194/AdmixTools/src/nicksrc/statsubs.c:1174: undefined reference to log' /home/liu194/AdmixTools/src/admixlib/nicklib.a(statsubs.o): In function
rtlchsq':
/home/liu194/AdmixTools/src/nicksrc/statsubs.c:1194: undefined reference to sqrt' /home/liu194/AdmixTools/src/nicksrc/statsubs.c:1196: undefined reference to
exp'
/home/liu194/AdmixTools/src/admixlib/nicklib.a(statsubs.o): In function pochisq': /home/liu194/AdmixTools/src/nicksrc/statsubs.c:1233: undefined reference to
exp'
/home/liu194/AdmixTools/src/nicksrc/statsubs.c:1234: undefined reference to sqrt' /home/liu194/AdmixTools/src/nicksrc/statsubs.c:1242: undefined reference to
log'
/home/liu194/AdmixTools/src/nicksrc/statsubs.c:1245: undefined reference to log' /home/liu194/AdmixTools/src/nicksrc/statsubs.c:1246: undefined reference to
exp'
/home/liu194/AdmixTools/src/nicksrc/statsubs.c:1253: undefined reference to sqrt' /home/liu194/AdmixTools/src/admixlib/nicklib.a(statsubs.o): In function
critchi':
/home/liu194/AdmixTools/src/nicksrc/statsubs.c:1289: undefined reference to log' /home/liu194/AdmixTools/src/nicksrc/statsubs.c:1293: undefined reference to
sqrt'
/home/liu194/AdmixTools/src/admixlib/nicklib.a(statsubs.o): In function pof': /home/liu194/AdmixTools/src/nicksrc/statsubs.c:1346: undefined reference to
sqrt'
/home/liu194/AdmixTools/src/nicksrc/statsubs.c:1349: undefined reference to atan' /home/liu194/AdmixTools/src/nicksrc/statsubs.c:1353: undefined reference to
sqrt'
/home/liu194/AdmixTools/src/nicksrc/statsubs.c:1358: undefined reference to sqrt' /home/liu194/AdmixTools/src/admixlib/nicklib.a(statsubs.o): In function
ltlg1':
/home/liu194/AdmixTools/src/nicksrc/statsubs.c:1446: undefined reference to log' /home/liu194/AdmixTools/src/nicksrc/statsubs.c:1447: undefined reference to
log'
/home/liu194/AdmixTools/src/nicksrc/statsubs.c:1449: undefined reference to exp' /home/liu194/AdmixTools/src/admixlib/nicklib.a(statsubs.o): In function
rtlg2':
/home/liu194/AdmixTools/src/nicksrc/statsubs.c:1486: undefined reference to log' /home/liu194/AdmixTools/src/nicksrc/statsubs.c:1487: undefined reference to
log'
/home/liu194/AdmixTools/src/nicksrc/statsubs.c:1489: undefined reference to exp' /home/liu194/AdmixTools/src/admixlib/nicklib.a(statsubs.o): In function
twdensx':
/home/liu194/AdmixTools/src/nicksrc/statsubs.c:1543: undefined reference to log' /home/liu194/AdmixTools/src/nicksrc/statsubs.c:1544: undefined reference to
log'
/home/liu194/AdmixTools/src/nicksrc/statsubs.c:1545: undefined reference to sqrt' /home/liu194/AdmixTools/src/nicksrc/statsubs.c:1547: undefined reference to
exp'
/home/liu194/AdmixTools/src/admixlib/nicklib.a(statsubs.o): In function twtailx': /home/liu194/AdmixTools/src/nicksrc/statsubs.c:1559: undefined reference to
log'
/home/liu194/AdmixTools/src/nicksrc/statsubs.c:1560: undefined reference to log' /home/liu194/AdmixTools/src/nicksrc/statsubs.c:1561: undefined reference to
sqrt'
/home/liu194/AdmixTools/src/nicksrc/statsubs.c:1563: undefined reference to exp' /home/liu194/AdmixTools/src/admixlib/nicklib.a(statsubs.o): In function
twnorm':
/home/liu194/AdmixTools/src/nicksrc/statsubs.c:1597: undefined reference to sqrt' /home/liu194/AdmixTools/src/nicksrc/statsubs.c:1597: undefined reference to
sqrt'
/home/liu194/AdmixTools/src/nicksrc/statsubs.c:1599: undefined reference to sqrt' /home/liu194/AdmixTools/src/nicksrc/statsubs.c:1599: undefined reference to
sqrt'
/home/liu194/AdmixTools/src/nicksrc/statsubs.c:1600: undefined reference to pow' /home/liu194/AdmixTools/src/admixlib/nicklib.a(statsubs.o): In function
dirmult':
/home/liu194/AdmixTools/src/nicksrc/statsubs.c:1853: undefined reference to lgamma' /home/liu194/AdmixTools/src/nicksrc/statsubs.c:1854: undefined reference to
lgamma'
/home/liu194/AdmixTools/src/nicksrc/statsubs.c:1856: undefined reference to lgamma' /home/liu194/AdmixTools/src/nicksrc/statsubs.c:1857: undefined reference to
lgamma'
/home/liu194/AdmixTools/src/admixlib/nicklib.a(statsubs.o): In function betai': /home/liu194/AdmixTools/src/nicksrc/statsubs.c:1898: undefined reference to
lgamma'
/home/liu194/AdmixTools/src/admixlib/nicklib.a(statsubs.o):/home/liu194/AdmixTools/src/nicksrc/statsubs.c:1898: more undefined references to lgamma' follow /home/liu194/AdmixTools/src/admixlib/nicklib.a(statsubs.o): In function
betai':
/home/liu194/AdmixTools/src/nicksrc/statsubs.c:1898: undefined reference to log' /home/liu194/AdmixTools/src/nicksrc/statsubs.c:1899: undefined reference to
log'
/home/liu194/AdmixTools/src/nicksrc/statsubs.c:1897: undefined reference to exp' /home/liu194/AdmixTools/src/admixlib/nicklib.a(statsubs.o): In function
weightjackx':
/home/liu194/AdmixTools/src/nicksrc/statsubs.c:2172: undefined reference to sqrt' /home/liu194/AdmixTools/src/admixlib/nicklib.a(statsubs.o): In function
calcfc':
/home/liu194/AdmixTools/src/nicksrc/statsubs.c:2232: undefined reference to cos' /home/liu194/AdmixTools/src/nicksrc/statsubs.c:2233: undefined reference to
sqrt'
/home/liu194/AdmixTools/src/nicksrc/statsubs.c:2243: undefined reference to cos' /home/liu194/AdmixTools/src/admixlib/nicklib.a(statsubs.o): In function
setbino':
/home/liu194/AdmixTools/src/nicksrc/statsubs.c:2307: undefined reference to exp' /home/liu194/AdmixTools/src/admixlib/nicklib.a(statsubs.o): In function
dither':
/home/liu194/AdmixTools/src/nicksrc/statsubs.c:2362: undefined reference to sqrt' /home/liu194/AdmixTools/src/admixlib/nicklib.a(statsubs.o): In function
exx':
/home/liu194/AdmixTools/src/nicksrc/statsubs.c:2408: undefined reference to exp' /home/liu194/AdmixTools/src/nicksrc/statsubs.c:2412: undefined reference to
exp'
/home/liu194/AdmixTools/src/admixlib/nicklib.a(linsubs.o): In function bal': /home/liu194/AdmixTools/src/nicksrc/linsubs.c:32: undefined reference to
sqrt'
/home/liu194/AdmixTools/src/admixlib/nicklib.a(linsubs.o): In function choldc': /home/liu194/AdmixTools/src/nicksrc/linsubs.c:276: undefined reference to
sqrt'
/home/liu194/AdmixTools/src/admixlib/nicklib.a(gauss.o): In function gauss': /home/liu194/AdmixTools/src/nicksrc/gauss.c:26: undefined reference to
log'
/home/liu194/AdmixTools/src/nicksrc/gauss.c:26: undefined reference to sqrt' /home/liu194/AdmixTools/src/admixlib/nicklib.a(gds.o): In function
randev1':
/home/liu194/AdmixTools/src/nicksrc/gds.c:42: undefined reference to sqrt' /home/liu194/AdmixTools/src/nicksrc/gds.c:49: undefined reference to
log'
/home/liu194/AdmixTools/src/nicksrc/gds.c:49: undefined reference to log' /home/liu194/AdmixTools/src/admixlib/nicklib.a(gds.o): In function
randev0':
/home/liu194/AdmixTools/src/nicksrc/gds.c:65: undefined reference to exp' /home/liu194/AdmixTools/src/nicksrc/gds.c:70: undefined reference to
pow'
/home/liu194/AdmixTools/src/nicksrc/gds.c:74: undefined reference to log' /home/liu194/AdmixTools/src/nicksrc/gds.c:75: undefined reference to
log'
/home/liu194/AdmixTools/src/nicksrc/gds.c:81: undefined reference to log' /home/liu194/AdmixTools/src/admixlib/nicklib.a(gds.o): In function
ranexp':
/home/liu194/AdmixTools/src/nicksrc/gds.c:101: undefined reference to log' /home/liu194/AdmixTools/src/admixlib/nicklib.a(gds.o): In function
poidev':
/home/liu194/AdmixTools/src/nicksrc/gds.c:164: undefined reference to exp' /home/liu194/AdmixTools/src/nicksrc/gds.c:176: undefined reference to
sqrt'
/home/liu194/AdmixTools/src/nicksrc/gds.c:177: undefined reference to log' /home/liu194/AdmixTools/src/nicksrc/gds.c:178: undefined reference to
lgamma'
/home/liu194/AdmixTools/src/nicksrc/gds.c:182: undefined reference to tan' /home/liu194/AdmixTools/src/nicksrc/gds.c:185: undefined reference to
floor'
/home/liu194/AdmixTools/src/nicksrc/gds.c:186: undefined reference to lgamma' /home/liu194/AdmixTools/src/nicksrc/gds.c:186: undefined reference to
exp'
/home/liu194/AdmixTools/src/admixlib/nicklib.a(gds.o): In function ranpoiss1': /home/liu194/AdmixTools/src/nicksrc/gds.c:432: undefined reference to
exp'
/home/liu194/AdmixTools/src/admixlib/nicklib.a(gds.o): In function raninvwis': /home/liu194/AdmixTools/src/nicksrc/gds.c:557: undefined reference to
sqrt'
/home/liu194/AdmixTools/src/nicksrc/gds.c:565: undefined reference to sqrt' /home/liu194/AdmixTools/src/admixlib/nicklib.a(gds.o): In function
rant':
/home/liu194/AdmixTools/src/nicksrc/gds.c:680: undefined reference to sqrt' /home/liu194/AdmixTools/src/nicksrc/gds.c:684: undefined reference to
sqrt'
/home/liu194/AdmixTools/src/admixlib/nicklib.a(gds.o): In function samppow': /home/liu194/AdmixTools/src/nicksrc/gds.c:710: undefined reference to
log'
/home/liu194/AdmixTools/src/nicksrc/gds.c:710: undefined reference to log' /home/liu194/AdmixTools/src/nicksrc/gds.c:714: undefined reference to
log'
/home/liu194/AdmixTools/src/nicksrc/gds.c:714: undefined reference to log' /home/liu194/AdmixTools/src/nicksrc/gds.c:724: undefined reference to
exp'
/home/liu194/AdmixTools/src/admixlib/nicklib.a(gds.o): In function ranhprob': /home/liu194/AdmixTools/src/nicksrc/gds.c:821: undefined reference to
exp'
/home/liu194/AdmixTools/src/nicksrc/gds.c:838: undefined reference to exp' /home/liu194/AdmixTools/src/nicksrc/gds.c:839: undefined reference to
exp'
/home/liu194/AdmixTools/src/nicksrc/gds.c:839: undefined reference to `exp'
collect2: ld returned 1 exit status
make: *** [qp3Pop] Error 1
Hi,
Build dies with error
make: *** No rule to make target 'qpAdm.o', needed by 'qpAdm'. Stop.
I appears that a source file (qpAdm.c?) is missing from the repository.
The same appears to be true for the source file for target qpWave.o.
Regards,
Bernt
The example data files seems to be moved. Can you please fix the link.
https://genetics.med.harvard.edu/reich/Reich_Lab/Software_files/AdmixTools_Example_Data.tar.gz
@bumblenick
accounting for differential drift between populations.
Currently available programs such as ADMIXTURE and STRUCTURE are sensitive to differential drift so I wonder if perhaps something using formal statistics like QpAdm(or perhaps that new method) but at the same being able to create genetic clusters like ADMIXTURE is possible. Or something being able to test genetic drift on separate model-based genetic components detected in a given sample, not the whole genome like current programs are doing. I think that would be particularly useful for Paleolithic specimens who according to ADMIXTURE were extremely "mixed". Is that because they weren't fully genetically differentiated yet? Which may complicate correctly detecting their relation to even Mesolithic samples such as WHGs let alone younger populations.
The option "chrom: 23" to run qpAdm on the X chromosome, as well as the default behaviour of excluding SNPs on the X/Y chromosomes, are not described in the qpAdm README.
Hi,
There are many examples using sliding windows to detect introgression regions using D statistic. So, I wander that, could I run qp3Pop to detect introgression regions with sliding windows? If so, does qp3Pop have more power to detect introgression regions compared to D_statistic?
Thanks!
hello,
releaase archive does not build convertf nor mergeit while git tree will.
after issuing make all and make install in both git cloned tree and untared release-v5.1 content of bin directories differs
bigmess:/tmp/AdmixTools > \ls bin
convertf expfit.sh qp3Pop qpAdm qpDpart qpF4ratio qpWave qpreroot wtjack.pl
dowtjack mergeit qp4diff qpBound qpDstat qpGraph qpff3base rexpfit.r
bigmess:/tmp/AdmixTools-5.1 > \ls bin
dowtjack qp3Pop qpAdm qpDpart qpF4ratio qpWave qpreroot wtjack.pl
expfit.sh qp4diff qpBound qpDstat qpGraph qpff3base rexpfit.r
easy to fix, because it's just a deifference in src/Makefile, see
-- /tmp/AdmixTools-git/src/Makefile 2018-11-16 10:42:52.830661146 +0100
+++ /ltmp/AdmixTools-5.1/src/Makefile 2018-09-27 18:27:42.000000000 +0200
@@ -21,7 +21,7 @@
ND = nicksrc
NLIB = $(ND)/libnick.a
-PROGS= qp3Pop qpDstat qpF4ratio qpAdm qpWave qp4diff dowtjack expfit.sh qpBound qpGraph qpreroot qpff3base qpDpart convertf mergeit ## gcount kimf
+PROGS= qp3Pop qpDstat qpF4ratio qpAdm qpWave qp4diff dowtjack expfit.sh qpBound qpGraph qpreroot qpff3base qpDpart ## gcount kimf
## rolloff* convertf mergeit from .../o2src
PROGS2 = rexpfit.r wtjack.pl
Hello
In my log result I only have the value "Dstat" and "Z"
but no BABA et ABBA ...
and "best" notation are on which criteria ?
can help me please ?
thanks in advance.
Should have :
result: Pop1 (W) Pop2 (X) : Pop3 (Y) Pop4 (Z) D-stat Z BABA ABBA #_of_SNPs_that_all_populations_have_data
my out file :
qpDstat version: 450
0 "N1" 1
1 "N9" 1
2 "N5" 1
3 "T1" 1
4 "D1" 1
5 "D22" 1
jackknife block size: 0.050
snps: 54984 indivs: 6
number of blocks for jackknife: 68
D stat Z
result: "N1" "N9" : "N5" "T1" -0.0998 -1.083 best
result: "N1" "N5" : "N9" "T1" -0.3463 -5.492
result: "N1" "T1" : "N9" "N5" -0.2576 -3.761
result: "N1" "N9" : "N5" "D1" -0.1446 -1.591 best
result: "N1" "N5" : "N9" "D1" -0.3724 -6.114
result: "N1" "D1" : "N9" "N5" -0.2441 -3.408
etc....
I am working with VCF files. I am able to convert between different formats (VCF <--> PLINK <--> EIGENSTRAT). But the .snp file generated in this process has genetic position values all 0. Is there any way I can populate these? Perhaps using the genetic maps files?
Dear @bumblenick
I have both wild and domesticated populations. From the analysis of inferred ancestral components (using admixture software), I found some wild individuals contained domesticate components (about 50%). So I want to use the three-population test to test whether these individuals have gene flow from the domesticated populations. But the results are all non-negative, meanwhile, I also do this at the individual level, the results are same as the population level. But from the results, I can see the f_3 values for these admixtured individuals (SRR1576679
,BS1
,ERR340348
) are smaller than the unadmixtured individuals (ERR340329
,ERR340333
,ERR340335
,ERR340341
) when do analysis at individual level. I guess this admixture event may be ancient (about several thousands generations ago). So I want to know can I get some more information from the following results when the f_3 value is non-negative and can three-population test detect ancient gene flow? Thanks.
snps: 16016002
Source 1 Source 2 Target f_3 std. err Z SNPs
result: ERR340334 A14 BS1 0.079671 0.005448 14.624 12914067
result: ERR340334 A14 ERR340329 0.602950 0.036776 16.395 13012058
result: ERR340334 A14 ERR340333 0.404647 0.025341 15.968 13052431
result: ERR340334 A14 ERR340335 0.334453 0.020576 16.255 13053033
result: ERR340334 A14 ERR340341 0.487972 0.026363 18.510 12994993
result: ERR340334 A14 ERR340348 0.106602 0.006818 15.636 12944510
result: ERR340334 A14 SRR1576679 0.084376 0.004683 18.016 12857869
Best
Zhuqing
Hi all,
I want to do three-population admixture test, but when I specified the parameters (in eigenstrat format, which can be used to run qpDstat
smoothly) and run qp3Pop
, the results are all no data. I do not know why. Hope your help!
Thanks
Best
Zhuqing
Hello!
Sometimes qpAdm will give me identical admixture proportions between different models, and even forego forcing some to 0. (see part of results below).
I am fairly sure the chi square statistics are accurate for the model, I just don't get the admixture proportions.
fixed pat wt dof chisq tail prob
00000 0 4 2.925 0.570392 0.006 -0.022 0.557 0.048 0.411 infeasible
00001 1 5 101.589 2.44391e-20 -4.084 0.558 0.092 4.434 0.000 infeasible
00010 1 5 3.026 0.696022 -4.084 0.558 0.092 4.434 0.000 infeasible
00100 1 5 83.532 1.52896e-16 -4.084 0.558 0.092 4.434 0.000 infeasible
Clearly in the latter 2 models, the final component shouldn't be forced to 0, and instead the other components should.
Is this a problem with my use, or an internal problem?
Cheers
Looking at the Makefile AdmixTools links with the GNU scientific library, which is released under the GPL. As a derived work AdmixTools would also have to be released under the GPL, but the "SOFTWARE COPYRIGHT NOTICE AGREEMENT" at the bottom of the README is in conflict with the GPL (your "agreement" prohibits commercial use whereas the GPL does not permit restrictions on use).
Please adjust the license.
Note that v5.0 release. Great!
However, it is really hard to compile at a no-root-privilege server or a no-web server. Executable files may get more users.
Dear Nick,
I'm trying to work out a model with complex admixtures starting with a simple one and adding nodes. My starting point was based on a D calculation that wasn't significant, using qpDstat. But when I plot the qpGraph, I get f statistics with repeated populations. Is this normal behaviour?
I'm attaching the qpGraph below.
Many thanks in advance
Hello,
I use D-statistics in one thousand SNP, and the result is all zero. Why is it happened? The number of snp is too small? Can it been solved?
Hi,
I have a ancient goat sample and want to know which modern goat group it most close to by using Outgroup F3 Statistics.But my outgroup had a long divergence time with them,so the F3_result is greater than 1.Does it may have some effect to my judge?Is my ancient goat most close to the modern goat group with the max F3_result?
Thanks!
Hi,
My SNPs data came from whole genome re-sequencing data. Before running D-test and F4ratioTest, do I need prune SNPs with high LD ?
Thanks!
Would you mind using exit(X) instead of abort() in nicksrc/strsubs.c
with X obviously different from 0
this way error will be raised and no core dump generated.
if core is important for debug purpose, some #define will allow to toggle fatalx beetween exit() and abort()
regards
Eric
Library linkers are positional in some compilers, which prevents the code from compiling on a default Ubuntu Linux install. Problem is resolved by moving library linkers to the end in the Makefile. Diff attached.
Makefile_diff.txt
I have a "de novo" assembly, and when trying to use qpDstats the columns of chromosome information in the snp file is necesary to run the program. I tried to complete the columned with NA and it is not possible. How can I solve this? If completing the chromosome number randomly the results can chage. I am not sure how to proceed.
Thanks
Agostina
(vlog): negative or zero value 0
During a run of qpGraph, we got the following error:
...
starting analysis
number of initial random trials: 10792
*** glibc detected *** qpGraph: free(): invalid next size (fast): 0x00000000152d14d0 ***
======= Backtrace: =========
/lib/x86_64-linux-gnu/libc.so.6(+0x7da26)[0x2b0949deda26]
qpGraph[0x40a684]
qpGraph[0x404f51]
/lib/x86_64-linux-gnu/libc.so.6(__libc_start_main+0xed)[0x2b0949d917ed]
qpGraph[0x4023a9]
======= Memory map: ========
00400000-00462000 r-xp 00000000 00:14 18410012 /software/hgi/pkglocal/admixtools-5.0/bin/qpGraph
00661000-00662000 rw-p 00061000 00:14 18410012 /software/hgi/pkglocal/admixtools-5.0/bin/qpGraph
00662000-00665000 rw-p 00000000 00:00 0
011a0000-35a9f000 rw-p 00000000 00:00 0 [heap]
2b0948720000-2b0948742000 r-xp 00000000 08:06 251870234 /lib/x86_64-linux-gnu/ld-2.15.so
2b0948742000-2b0948744000 rw-p 00000000 00:00 0
2b0948942000-2b0948943000 r--p 00022000 08:06 251870234 /lib/x86_64-linux-gnu/ld-2.15.so
2b0948943000-2b0948945000 rw-p 00023000 08:06 251870234 /lib/x86_64-linux-gnu/ld-2.15.so
2b0948948000-2b0948f35000 r-xp 00000000 00:14 32105401 /software/hgi/pkglocal/lapack-3.6.1/lib/liblapack.so.3.6.1
2b0948f35000-2b0949135000 ---p 005ed000 00:14 32105401 /software/hgi/pkglocal/lapack-3.6.1/lib/liblapack.so.3.6.1
2b0949135000-2b0949138000 rw-p 005ed000 00:14 32105401 /software/hgi/pkglocal/lapack-3.6.1/lib/liblapack.so.3.6.1
2b0949138000-2b0949184000 rw-p 00000000 00:00 0
2b0949188000-2b09491df000 r-xp 00000000 00:14 32105398 /software/hgi/pkglocal/lapack-3.6.1/lib/libblas.so.3.6.1
2b09491df000-2b09493de000 ---p 00057000 00:14 32105398 /software/hgi/pkglocal/lapack-3.6.1/lib/libblas.so.3.6.1
2b09493de000-2b09493df000 rw-p 00056000 00:14 32105398 /software/hgi/pkglocal/lapack-3.6.1/lib/libblas.so.3.6.1
2b09493e0000-2b09495f8000 r-xp 00000000 00:14 33164881 /software/hgi/pkglocal/gsl-1.16/lib/libgsl.so.0.17.0
2b09495f8000-2b09497f7000 ---p 00218000 00:14 33164881 /software/hgi/pkglocal/gsl-1.16/lib/libgsl.so.0.17.0
2b09497f7000-2b09497fa000 r--p 00217000 00:14 33164881 /software/hgi/pkglocal/gsl-1.16/lib/libgsl.so.0.17.0
2b09497fa000-2b094980a000 rw-p 0021a000 00:14 33164881 /software/hgi/pkglocal/gsl-1.16/lib/libgsl.so.0.17.0
2b094980a000-2b094980b000 rw-p 00000000 00:00 0
2b0949810000-2b0949849000 r-xp 00000000 00:14 7763642 /software/hgi/pkglocal/gsl-1.16/lib/libgslcblas.so.0.0.0
2b0949849000-2b0949a48000 ---p 00039000 00:14 7763642 /software/hgi/pkglocal/gsl-1.16/lib/libgslcblas.so.0.0.0
2b0949a48000-2b0949a49000 r--p 00038000 00:14 7763642 /software/hgi/pkglocal/gsl-1.16/lib/libgslcblas.so.0.0.0
2b0949a49000-2b0949a4a000 rw-p 00039000 00:14 7763642 /software/hgi/pkglocal/gsl-1.16/lib/libgslcblas.so.0.0.0
2b0949a6a000-2b0949a6b000 rw-p 00000000 00:00 0
2b0949a70000-2b0949b6b000 r-xp 00000000 08:06 251870238 /lib/x86_64-linux-gnu/libm-2.15.so
2b0949b6b000-2b0949d6a000 ---p 000fb000 08:06 251870238 /lib/x86_64-linux-gnu/libm-2.15.so
2b0949d6a000-2b0949d6b000 r--p 000fa000 08:06 251870238 /lib/x86_64-linux-gnu/libm-2.15.so
2b0949d6b000-2b0949d6c000 rw-p 000fb000 08:06 251870238 /lib/x86_64-linux-gnu/libm-2.15.so
2b0949d70000-2b0949f24000 r-xp 00000000 08:06 251870225 /lib/x86_64-linux-gnu/libc-2.15.so
2b0949f24000-2b094a123000 ---p 001b4000 08:06 251870225 /lib/x86_64-linux-gnu/libc-2.15.so
2b094a123000-2b094a127000 r--p 001b3000 08:06 251870225 /lib/x86_64-linux-gnu/libc-2.15.so
2b094a127000-2b094a129000 rw-p 001b7000 08:06 251870225 /lib/x86_64-linux-gnu/libc-2.15.so
2b094a129000-2b094a12e000 rw-p 00000000 00:00 0
2b094a130000-2b094a24b000 r-xp 00000000 00:14 2038973 /software/hgi/pkglocal/gcc-4.9.1/lib64/libgfortran.so.3.0.0
2b094a24b000-2b094a44a000 ---p 0011b000 00:14 2038973 /software/hgi/pkglocal/gcc-4.9.1/lib64/libgfortran.so.3.0.0
2b094a44a000-2b094a44c000 rw-p 0011a000 00:14 2038973 /software/hgi/pkglocal/gcc-4.9.1/lib64/libgfortran.so.3.0.0
2b094a44c000-2b094a44d000 rw-p 00000000 00:00 0
2b094a450000-2b094a466000 r-xp 00000000 00:14 31989922 /software/hgi/pkglocal/gcc-4.9.1/lib64/libgcc_s.so.1
2b094a466000-2b094a665000 ---p 00016000 00:14 31989922 /software/hgi/pkglocal/gcc-4.9.1/lib64/libgcc_s.so.1
2b094a665000-2b094a666000 rw-p 00015000 00:14 31989922 /software/hgi/pkglocal/gcc-4.9.1/lib64/libgcc_s.so.1
2b094a668000-2b094a6a5000 r-xp 00000000 00:14 2038965 /software/hgi/pkglocal/gcc-4.9.1/lib64/libquadmath.so.0.0.0
2b094a6a5000-2b094a8a4000 ---p 0003d000 00:14 2038965 /software/hgi/pkglocal/gcc-4.9.1/lib64/libquadmath.so.0.0.0
2b094a8a4000-2b094a8a5000 rw-p 0003c000 00:14 2038965 /software/hgi/pkglocal/gcc-4.9.1/lib64/libquadmath.so.0.0.0
2b094a8a5000-2b094b0a8000 rw-p 00000000 00:00 0
7ffdf588c000-7ffdf58ae000 rw-p 00000000 00:00 0 [stack]
7ffdf58e0000-7ffdf58e1000 r-xp 00000000 00:00 0 [vdso]
ffffffffff600000-ffffffffff601000 r-xp 00000000 00:00 0 [vsyscall]
Aborted
Using gdb, I've tracked this down to the free (ww2)
call at the end of initvmix
:
https://github.com/DReichLab/AdmixTools/blob/master/src/qpGraph.c#L2183
I meet some problem when I used qpDstat.
Some of my genotype data:
292229222299999999999999999999999999999999999999101919999999999999
999229229999299999292999292929992199090092222929222929222229922229
999229229991299999222229291209991222222222222229222222222222222229
999229229992229229222299222229992229222221111019222222222222222222
999229229992229229222222222229992229222222222229222220191112222222
SNP data:
scaffold_0:25599 0 0 25599 C T
scaffold_0:26840 0 0 26840 C T
scaffold_0:27901 0 0 27901 C A
scaffold_0:27953 0 0 27953 T A
scaffold_0:27992 0 0 27992 G A
individual data:
GSA1 U GSA
GSA2 U GSA
GSA3 U GSA
GSA4 U GSA
GSA5 U GSA
GSA6 U GSA
GSA7 U GSA
GSA8 U GSA
GSA9 U GSA
Besides, my genotype data have 786 scaffolds. When I run the commond qpDstat -p Dsta_par, it tells some problems:
qpDstat: parameter file: Dsta_par
##PARAMETER NAME: VALUE
genotypename: 66inds_SNP.eigenstratgeno
snpname: 66inds_SNP.snp
indivname: 66inds_SNP.ind
popfilename: list_pop1
warning: bad chrom: scaffold_0:14883 0 0 14883 C T
warning: bad chrom: scaffold_0:15074 0 0 15074 G T
warning: bad chrom: scaffold_0:15222 0 0 15222 C T
warning: bad chrom: scaffold_0:25526 0 0 25526 C T
warning: bad chrom: scaffold_0:25579 0 0 25579 C T
warning: bad chrom: scaffold_0:25599 0 0 25599 C T
warning: bad chrom: scaffold_0:26840 0 0 26840 C T
warning: bad chrom: scaffold_0:27901 0 0 27901 C A
warning: bad chrom: scaffold_0:27953 0 0 27953 T A
warning: bad chrom: scaffold_0:27992 0 0 27992 G A
Segmentation fault (core dumped)
Please tell me what's wrong with my data?
Thank you very much.
Hi
Is it possible to run qpGraph with a haploid setting? I can see a reference to "haploid" in the qpGraph.c file (on line 1774). Is it as simple as to change the 0 to a 1?
Thanks in advance
Hello !
I can run AdmixTools smoothly , but I don't what does the values in the output mean ;for example f_3 value ans Z value in qp3Pop.log . I read the README.3PopTest file , It doesn't answer my question , where else can I get the information ?
Hi,
I am running admixtools 3.0, downloaded June 29, 2015. I'm running this on Fedora Linux. When I run ROLLOFF, the log file looks OK after completion, but the only output file is "gmon.out". What is this file, and what is going on?
Thanks,
Juan
Hi there,
I would like to use convertf to convert from vcf to eigenstrat to test hybridization using ADMIXTOOLS. The problem is, that my chromosome IDs don't refer to actual chromosomes but to scaffolds.
When I run converf I get an error saying:
warning (mapfile): bad chrom: 100
I realized that when I set all chromosomes to 1, sort the variants and remove those that are duplicate, convertf works. But I dont want to loose the actual snp order. Also I'd prefer not to remove duplicate variants...
Is there any way to circumvent this and to be able to generate an eigenstrat file without having to change the chrom IDs?
Thanks in advance!
@bumblenick
Perhaps this new promising method could be added to Admixtools?
Is it advisable to set a p-value threshold according to chi sq, and not to unilaterally reject models with p-values < 0.05, or can we reject models with p<0.05 regardless of chi sq values?
Dear all,
I have been trying to used Admixtools to calculate fstatistics between several individuals. I have two questions concerning the runs:
Thanks in advance!
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.