Hacktoberfest 2026: le issue che i maintainer hanno segnato per ottobre, aperte e adatte ai principianti. Sfoglia le issue Hacktoberfest

Segmentation fault with 1000G but not with HM3

Aperta
#76 2 commenti 0 reazioni 0 assegnatari Vedi su GitHub

Nessuno ha ancora preso questa issue.

Valutazione

Difficoltà
4/5
Tempo stimato
3-5 giorni
Idoneità per principianti
25/100
Tipo di issue
Bug
Chiarezza
Da chiarire
Stato di attività
Ferma
Stack tecnologico
c
Ambito
cli

Direzione di ricerca

Inizia con il comando smartpca e il relativo file dei parametri, confrontando l’invocazione funzionante di HapMap 3 con quella di 1000G. Esamina i file generati rawdata.1kg_phase1.pruned.pca.par e rawdata.1kg_phase1.pruned.log, incluso il log collegato del 2019, per identificare dove smartpca non riesce e se sono coinvolti le dimensioni dell’input o i parametri. Il lavoro è completato quando si riproduce il problema o si isola una causa specifica nell’input o nella configurazione.

Scritto dal modello di indicizzazione a partire dal testo della issue.

Descrizione

Hi,

I am following this protocol: https://www.nature.com/articles/nprot.2010.116. At some point it will make use of smartpca. This works beautifully for HapMap 3 data:

perl ~/git/EIG/bin/smartpca.perl \
> -i rawdata/rawdata.hapmap3r2.pruned.bed \
> -a rawdata/rawdata.hapmap3r2.pruned.pedsnp \
> -b rawdata/rawdata.hapmap3r2.pruned.pedind \
> -k 10 \
> -o rawdata/rawdata.hapmap3r2.pruned.pca \
> -p rawdata/rawdata.hapmap3r2.pruned.plot \
> -e rawdata/rawdata.hapmap3r2.pruned.eval \
> -l rawdata/rawdata.hapmap3r2.pruned.log \
> -m 5 \
> -t 10 \
> -s 6.0 \
> -w reference/hapmap3r2_CEU.CHB.JPT.YRI-pca-populations.txt
smartpca -p rawdata/rawdata.hapmap3r2.pruned.pca.par >rawdata/rawdata.hapmap3r2.pruned.log
ploteig -i rawdata/rawdata.hapmap3r2.pruned.pca.evec -c 1:2  -p Case:Control:3:4:5:6  -x  -y  -o rawdata/rawdata.hapmap3r2.pruned.plot.xtxt
evec2pca.perl 10 rawdata/rawdata.hapmap3r2.pruned.pca.evec rawdata/rawdata.hapmap3r2.pruned.pedind rawdata/rawdata.hapmap3r2.pruned.pca

Here's the head, for instance, of the result:

cat rawdata/rawdata.hapmap3r2.pruned.pca.evec | head
           #eigvals:    43.658    23.724     1.738     1.055     1.052     1.046     1.046     1.042     1.038     1.034
                 1:1     0.0050      0.0807     -0.0021     -0.0024     -0.0045      0.0080      0.0033      0.0031     -0.0133      0.0112             Case
                 2:2     0.0045      0.0821     -0.0035      0.0012     -0.0004      0.0122     -0.0046      0.0051     -0.0101     -0.0056          Control
                 3:3     0.0055      0.0813     -0.0026     -0.0064      0.0005      0.0153      0.0010      0.0047     -0.0042      0.0110             Case
                 4:4     0.0049      0.0801      0.0029      0.0037      0.0022      0.0126      0.0022      0.0040     -0.0078      0.0047             Case
                 5:5     0.0047      0.0812     -0.0004      0.0002     -0.0034      0.0124     -0.0003      0.0025     -0.0063      0.0129             Case
                 6:6     0.0045      0.0807     -0.0021      0.0026     -0.0155      0.0168      0.0090      0.0083     -0.0026      0.0086             Case
                 7:7     0.0051      0.0809      0.0007      0.0009     -0.0017      0.0190      0.0068      0.0027     -0.0019      0.0062             Case
                 8:8     0.0050      0.0813      0.0016     -0.0046     -0.0023      0.0152     -0.0028      0.0042     -0.0048     -0.0002             Case
                 9:9     0.0053      0.0816     -0.0024     -0.0001     -0.0009      0.0107      0.0047      0.0046     -0.0095      0.0011             Case

But when I try to do the exact same thing using the 1000G data, it breaks down:

perl ~/git/EIG/bin/smartpca.perl \
> -i rawdata/rawdata.1kg_phase1.pruned.bed \
> -a rawdata/rawdata.1kg_phase1.pruned.pedsnp \
> -b rawdata/rawdata.1kg_phase1.pruned.pedind \
> -k 2 \
> -o rawdata/rawdata.1kg_phase1.pruned.pca \
> -p rawdata/rawdata.1kg_phase1.pruned.plot \
> -e rawdata/rawdata.1kg_phase1.pruned.eval \
> -l rawdata/rawdata.1kg_phase1.pruned.log \
> -t 2 \
> -w reference/1kg_phase1_all/1kg-pca-populations.txt
smartpca -p rawdata/rawdata.1kg_phase1.pruned.pca.par >rawdata/rawdata.1kg_phase1.pruned.log
sh: line 1: 40371 Segmentation fault: 11  smartpca -p rawdata/rawdata.1kg_phase1.pruned.pca.par > rawdata/rawdata.1kg_phase1.pruned.log
ploteig -i rawdata/rawdata.1kg_phase1.pruned.pca.evec -c 1:2  -p   -x  -y  -o rawdata/rawdata.1kg_phase1.pruned.plot.xtxt
evec2pca.perl 2 rawdata/rawdata.1kg_phase1.pruned.pca.evec rawdata/rawdata.1kg_phase1.pruned.pedind rawdata/rawdata.1kg_phase1.pruned.pca

Is this a memory issue? Or something else I am missing?

I should add, that I did have it running, once back in 2019. It then produced this contents: using the exact same input... I add the output here. It used smartpca version 16000.

rawdata.1kg_phase1.pruned.log

Many thanks

Sander

Lingua principale
C
Stelle
207
Fork
61
Metriche di merge delle PR
Nessuna PR unita negli ultimi 30g

Preparare l'ambiente

Questo progetto non fornisce container di sviluppo, Dockerfile né guida per i contributori, quindi l'ambiente è a tuo carico: parti dal suo README e consulta la nostra guida al primo contributo per i passaggi generali.

Come iniziare

  1. Leggi tutta la issue e poi la guida ai contributi del progetto.
  2. Commenta sulla issue per dire che te ne occupi tu — evita che due persone facciano lo stesso lavoro.
  3. Fai un fork del repository e lavora su un branch.
  4. Apri una pull request che faccia riferimento al numero della issue.

Altre issue di DReichLab/EIG

Tutte le issue di DReichLab/EIG

Issue simili

Altre issue su C

Ricevi le nuove issue nella tua casella

Un breve riepilogo di issue GitHub adatte ai principianti.