반응형

WGS, RNA-seq, sRNA-seq 등 시퀀싱 테크닉에따라 그리고 샘플의 종(species)에 따라 QC기준은 달라질 수 밖에 없지만 사람을 기준으로 대표적인 QC기준을 설명하고자 한다.

 

크게 실험단계에서의 라이브러리 제작이 잘 되는지 QC가 있고 시퀀싱이 진행된 후에 BI 기준의 QC가 있다.

 

실험 QC는 잘 모르니 생략하고 BI기준의 시퀀싱 이후 단계만 요약하고자 한다.

 

가장 첫 번째 단계는 Illumina 시퀀서 기준으로 PF(passing filter)가 있다.

 

passing filter란 시퀀싱 단계에서 일어나는 cluster가 얼마나 잘 구성되었는지 여부를 의미한다. cluster들끼리 오버랩되면 에러가 생길 가능성이 커져 오버랩이 일어난 cluster는 모두 제거하는데 이 비율이 얼마나 되는지 수치가 PF값이다.

 

https://www.illumina.com/content/dam/illumina-marketing/documents/products/technotes/hiseq-x-percent-pf-technical-note-770-2014-043.pdf

불러오는 중입니다...

PF값은 참고용으로만 사용할 뿐 실제 분석에서는 대부분 raw file인 fastq 파일부터 시작하기 때문에 QC는 아래 값들을 주로 사용한다.

 

fastq파일의 Number of reads, GCratio, Q20, Q30, N(%), Duplication rate, Adapter sequence

BAM파일의 Mapping rate, House-keeping gene expression, Insert size distribution

 

각각의 수치를 구하는 방법은 여러 종류의 tool이 있으나 FastQC가 fastq 수준에서는 가장 많이 사용한다.

https://www.bioinformatics.babraham.ac.uk/projects/fastqc/

 

Babraham Bioinformatics - FastQC A Quality Control tool for High Throughput Sequence Data

 

www.bioinformatics.babraham.ac.uk

BAM파일은 alignment tool에 따라서 수치를 제공하는 프로그램도 있고 samtools stats 명령어를 통해서도 확인 가능하다. 

반응형

'bioinformatics' 카테고리의 다른 글

gnomAD  (0) 2020.06.25
Phred quality score  (0) 2020.03.11
HLA genotyping  (0) 2020.02.21
SnpEff 빌드하기  (0) 2019.09.30
GC bias in the first few bases.  (0) 2019.07.04
반응형

공용으로 사용하는 서버에서 리눅스에 설치된 tool들의 환경변수 변경은 버전관리가 까다롭다.

 

Environment Modules을 설치하면 이런 부분을 상당히 쉽게 처리할 수 있다.

 

관리자(또는 유저가 직접 해도 상관없다)가 프로그램들의 경로를 미리 설정해놓고 그때 그때 필요한 버전을 로드하여 환경 변수를 변화시킨다.

 

https://modules.readthedocs.io/en/latest/index.html

 

Environment Modules — Modules documentation

© Copyright 1996-1999 John L. Furlani & Peter W. Osel, 1998-2017 R.K.Owen, 2002-2004 Mark Lakata, 2004-2017 Kent Mein, 2016-2020 Xavier Delaruelle Revision 0e43e359.

modules.readthedocs.io

다운로드는 https://github.com/cea-hpc/modules git hub에서 다운받아 진행한다.

 

cea-hpc/modules

Environment Modules: provides dynamic modification of a user's environment - cea-hpc/modules

github.com

압축을 풀고 아래처럼 설치한다.

$ ./configure --prefix=/usr/share/Modules \
              --modulefilesdir=/etc/modulefiles
$ make
$ make install

modulfilesdir은 path가 설정되어 있는 파일이 위치하는 폴더이다. 

 

/etc/modulefiles/gcc/9.2.0 파일을 만들고 아래처럼 내용을 채운다.

#%Module1.0######################################################################
##
## GCC modulefile
##
proc ModulesHelp { } {
    puts stderr "\tThe GCC Module\n"
    puts stderr "\tThis module adds GCC directory to your path."
}

module-whatis   "adds `.' to your PATH environment variable"

conflict gcc

module load mpfr mpc gmp
#prereq gmp

prepend-path    PATH    /data/Tools/gcc/gcc-9.2.0/bin
prepend-path    PATH    /data/Tools/gcc/gcc-9.2.0/include
prepend-path    PATH    /data/Tools/gcc/gcc-9.2.0/share
prepend-path    LD_LIBRARY_PATH /data/Tools/gcc/gcc-9.2.0/lib
prepend-path    LD_LIBRARY_PATH /data/Tools/gcc/gcc-9.2.0/lib64
prepend-path    LD_LIBRARY_PATH /data/Tools/gcc/gcc-9.2.0/libexec

 

홈페이지 메뉴얼을 참고하면 되지만 필요한 부분만 언급하자면

 

modulefiles폴더 하위폴더로 gcc가 모듈의 이름이며 9.2.0이 버전이다.

 

module load gcc 또는 module load gcc/9.2.0 으로 로드 할 수 있으며 버전을 명시하지 않을 경우 숫자가 가장 높은 버전을 자동으로 로드한다.

 

conflict는 해당 모듈이름과 동시에 로드 할 수 없는 것으로 동일 프로그램의 여러 버전이 로드되는 것을 방지할 수 있다.

module load는 gcc 모듈을 사용하기위해 dependency가 있는 다른 모듈을 로드하는 것이다.

prereq는 해당 모듈이 있지 않으면 에러가 난다. 

prepend-path는 PATH의 앞에 해당 경로를 추가하는 것이다. 

반응형

'Computer Science > linux' 카테고리의 다른 글

hostname 변경  (0) 2020.07.14
Google Cloud SDK linux 설치  (0) 2020.05.26
계정, 그룹 생성, 추가 및 삭제  (0) 2020.02.24
Zip 압축하기 / 압축 해제하기  (0) 2020.02.24
crontab 사용하기  (0) 2020.02.21
반응형

useradd는 모든 설정을 지정해주어야하기때문에 adduser를 사용하기로 한다.

 

필요에따라 userid와 groupid를 넣어서 만들고 passwd userid를 입력하여 비밀번호도 지정한다.

 

adduser -u [id] -g [group] <userid>
passwd userid

 

userid와 groupid에 대한 정보는 아래 폴더에 존재한다.

/etc/passwd
user1:x:765:1000::/home/user1:/bin/bash 

/etc/group
user:x:999: 
guest:x:900:
test1:x:1000:user1,user2,user3
test2:x:1001:user2

passwd 파일 안에는 아이디, uid, groupid, home 폴더 위치 등이 존재한다. 

uid 또는 gid를 이 파일 내에서 수정해도 되지만 이럴 경우 이미 만들어진 폴더, 파일등에서도 gid 정보 등을 같이 수정해줘야하는 불편함이 있다.

처음 생성할 때 정하는것이 좋다.

 

group 파일 안에는 그룹 이름과 gid, 해당 그룹에 속하는 아이디 등이 존재한다.

user1, user2, user3 모두 test1 그룹에 속하며 user2는 test2 그룹에도 동시에 속한다.

 

 

 

 

 

반응형
반응형

zip으로 압축할 때 

경로내의 모든 하위 폴더도 압축하려면

zip -r newfile.zip /path/to/directory/

 

zip으로 압축 해제 할 때

 

원하는 파일들만 압축 해제

unzip a.zip b.zip c.zip

 

디렉토리 내의 모든 zip파일 해제

unzip '*.zip'

 

여러 파일을 압축 해제하는데 특정 폴더에 넣고 싶을 때

unzip '*.zip' -d /path/to/directory/

 

반응형
반응형

 

Linux에서 정해진 시간마다 작업을 하려면 crontab 명령어를 실행하면 된다.

 

주로 스크립트 백업에 사용하는 편이다.

 

명령어를 직접 입력해도 되고 shell 스크립트를 작성해서 해당 스크립트를 실행하도록 해도 된다.

 

(명령어 형식)
# crontab -l          ; 현재 예약된 작업 리스트를 보여줌
# crontab -e         ; 현재 예약된작업 리스트를 편집함
# crontab -r          : 현재 예약된 리스트를 지움


  분    시    날    달  요일   
0-59 0-23 1-31 1-12 0-7 명령어

 

아래 페이지를 참고하면 원하는 시간을 정확하게 구할 수 있을 것이다.


https://crontab.guru/

 

crontab.guru - the cron schedule expression editor

loading... Cron job failures can be disastrous! We created Cronitor because cron itself can't alert you if your jobs fail or never start. Cronitor is easy to integrate and provides you with instant alerts when things go wrong. Learn more about cron job mon

crontab.guru

 

 

crontab -e 를 치면 vi 가 실행되고 내용을 입력하고 저장,종료하면 된다.

 

 

반응형

'Computer Science > linux' 카테고리의 다른 글

계정, 그룹 생성, 추가 및 삭제  (0) 2020.02.24
Zip 압축하기 / 압축 해제하기  (0) 2020.02.24
su 와 su- 의 차이  (1) 2019.09.19
Linux 새 디스크 연결하기  (0) 2019.08.30
Centos7 네트워크 설정  (0) 2019.08.27

+ Recent posts