DReichLab / DReichLab/EIG

XTX has zero trace

Open
#41 5 comments 0 reactions 0 assignees View on GitHub

Nobody has claimed this yet.

Dominant language
C
Stars
207
Forks
61
PR merge metrics
No merged PRs in 30d

Description

Hello,

I want to run smartpca using .ped and .map files.

Prior to running the code, I had to change 2 things in the .map file

  1. Replace 0's in Chromosome column with 40
  2. Since it complained about ID too long I made fake ids in sequential order (snp1-snp766221) and inserted this column in place of original one

Also, I replaced the 6th column value with 1 (it was 0 originally) in the .ped file.

Here is the code I am running next:
EIG-7.2.1/bin/smartpca -p par.example

Here is the par.example file:

parameter file: par.example
### THE INPUT PARAMETERS
##PARAMETER NAME: VALUE
genotypename: 191101KS-01.ped
snpname: modified.191101KS-01.map
indivname: 191101KS-01.ped
evecoutname: 191101KS-01.evec
evaloutname: 191101KS-01.eval
altnormstyle: NO
numoutevec: 2
familynames: NO
grmoutname: grmjunk
## smartpca version: 16000
norm used

Here is a portion of the .map file (tab-separated)

chr1    snp1    121.2806        99826920
chr1    snp2    122.1472        100599380
chr1    snp3    124.0726        102914837
chr1    snp4    124.1985        103761094
chr1    snp5    124.2819        104321842
chr1    snp6    126.3073        106194696
chr1    snp7    128.415 108897058
chr1    snp8    129.4658        109685814
chr1    snp9    129.4659        109685883
chr1    snp10   129.466 109685993
...

Here is a portion of the .ped file (tab-separated)

013_00032       013_00032       0       0       0       1       A       A       A       A       G       G       G       G       C       C       T       G       A       A       0       0       A       C       T       T       0       0       G       G       A       A       0       0       G       G       0       0       T       C       A       C       0       0       0       0       T       T       A       A       A       C       0       0       G       G       G       G       A       A       A       A       0       0       T       T       0       0       0       0       T       T       C       C       0       0       A       A       T       T       C       C       A       A       G       G       0       0       T       G       A       A       T       G       T       T       G       G       0       0       G       G       C       C       G       G       C     ...

This is a portion of the output/error I get:

parameter file: par.example
### THE INPUT PARAMETERS
##PARAMETER NAME: VALUE
genotypename: 191101KS-01.ped
snpname: modified.191101KS-01.map
indivname: 191101KS-01.ped
evecoutname: 191101KS-01.evec
evaloutname: 191101KS-01.eval
altnormstyle: NO
numoutevec: 2
familynames: NO
grmoutname: grmjunk
## smartpca version: 16000
norm used

*** warning.  genetic distances are in cM not Morgans
chr1	snp1	121.2806	99826920

snp order check fail; snp list not ordered: modified.191101KS-01.map (processing continues)    1     0 58814 
zzz 0 62410
snp order check fail; snp list not ordered: modified.191101KS-01.map (processing continues)    1     0 629241 
zzz 1 400267
snp order check fail; snp list not ordered: modified.191101KS-01.map (processing continues)    1     0 629912 
zzz 2 385321
snp order check fail; snp list not ordered: modified.191101KS-01.map (processing continues)    1     0 630053 
zzz 3 739666
snp order check fail; snp list not ordered: modified.191101KS-01.map (processing continues)    1     0 630128 
zzz 4 354357
snp order check fail; snp list not ordered: modified.191101KS-01.map (processing continues)    1     0 631712 
zzz 5 354862
snp order check fail; snp list not ordered: modified.191101KS-01.map (processing continues)    1     0 632287 
zzz 6 385313
snp order check fail; snp list not ordered: modified.191101KS-01.map (processing continues)    1     0 632828 
zzz 7 385323
snp order check fail; snp list not ordered: modified.191101KS-01.map (processing continues)    1     0 632828 
zzz 8 385324
...
...
nodata:            snp701442
nodata:            snp269372
nodata:             snp31100
nodata:            snp352716
nodata:            snp421014
nodata:            snp206750
nodata:            snp186242
nodata:             snp20472
number of samples used: 0 number of snps used: 0
Using 1 thread, and partial sum lookup algorithm.
total number of snps killed in pass: 0  used: 0
fatalx:
XTX has zero trace (perhaps no data)
Abort trap: 6

Since none of snps or samples are used, I am wondering if the format of the input files is still correct or not? Is it necessary that all snps belonging to the same chromosome appear together? My .ped file contains only 1 sample currently (for testing purposes), is it necessary to have multiple? Also, I noticed the example.ped provided in the package is different in that 7th column onwards I have a combination of A,G,C,T and numbers and former has a bunch of numbers. Could you provide me any pointers as to how I can go about this?

Thank you,
Asma

Contributor guide

No contributing guide indexed for this repository

First steps

  1. Read the whole issue, then the project's contributing guide.
  2. Comment on the issue to say you are picking it up — it saves two people doing the same work.
  3. Fork the repository and make your change on a branch.
  4. Open a pull request that references the issue number.

Research direction

Start with the smartpca invocation and par.example, then inspect the supplied .map and .ped excerpts alongside the reported ordering failures and nodata messages. Reproduce the run and determine why zero samples and SNPs are accepted; done means identifying the input-format or ordering issue and documenting the required valid inputs.

Written by the indexing model from the issue text.

Assessment

Tech stack
c
Domain
bioinformatics
Issue type
Bug
Difficulty
4/5
Estimated time
3-5 days
Activity status
Stale
Clarity
Needs clarification
Newbie friendliness
25/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.