2012-03-25 2 views
4

나는 게놈 전체 데이터를 분석하기 위해 PLINK과 일하고 있습니다.PLink를 사용하여 중복 된 SNP를 제거하려면 어떻게합니까?

중복 된 SNP를 제거하는 방법을 아는 사람이 있습니까?

+1

과 중복되지 않습니까? duplicateSNPs.txt를 제외 하시겠습니까? 문제의 해결책을 찾으려면 unix 유틸리티 uniq를 확인하십시오. –

+0

게놈 도구 또는 PuTTY (SSH) 명령 줄 도구에 plink 태그를 사용해야합니까? (http://meta.stackexchange.com/q/178289/146482) –

+0

rsID로 복제하거나 방법? –

답변

2

내가 알고있는 것을 자동으로 수행하는 명령은 없지만 과거에 해본 방법은 복제 된 SNP의 목록을 얻고 예를 들어 rs1001.dup로 복제본을 변경 한 다음 --update-allele --update-name를 실행 한 다음 중복의 목록을 작성, 그래서 모든 항목은 이름의 끝에 .dup이있을 것이다, 그리고 너무 열심히 당신이하면 안 중복의 SNP의 목록을 얻기 --extract duplicateSNPs.txt --make-bed --out yourfilename.dups.removed

실행 R.에 익숙합니다. "X를 배울뿐입니다." 대답

0

TPED 파일을 사용해야 할지라도 R은 더 쉽습니다. 중복은 R 작업 디렉토리에 apper 것

a = read.table("yourfile.TPED",sep = " ",header=FALSE) 
b = a[!duplicated(a$V2),] 
write.table(b,file="newfile.TPED",sep=" ",quote = FALSE,col.names = FALSE, row.names=FALSE) 

newfile.TPED없이 : 당신은 TPED 파일 만 복사를 얻을 수와 R 콘솔에이를 붙여 관리하면. 힌트 : 파일의 실제 이름 인 yourfile.TPEDnewfile.TPED을 스크립트의 일부로 변경할 수 있습니다.

4

PLINK 1.9에서는 중복을 나열하고 나머지 하나는 그대로두고 나머지 하나는 제거합니다 (--list-duplicate-vars suppress-first). 나는 이것이 위로 미끄러지는 것을 알고있다.

Davy가 제안한대로 --exclude을 사용하는 대신 --extract을 사용하여 SNP 목록을 없애도됩니다. 이 독특한 위치에서의 SNP에 대한 SNP ID를 가진 keepers_chr.txt 파일을 만듭니다

for i in {1..22}; do 
    cat yourfile_chr${i}.map | grep "$i" | cut -f -4 | uniq | cut -f -2 | keepers_chr${i}.txt; 
done 

: 유닉스 기반 시스템 (데이터가 PED/MAP 형식에 있고 chromossome에 의해 절단 가정) 쉬운 방법이있다. 그런 다음 PLINK를 실행하여 원본 파일을 제공하고 --make-bed --out unique_file

관련 문제