화요일, 2월 19, 2013

Ensembl Other Metazoa gtf Summary


Metazoa 중 기타등등

Name (Ensembl)
Total Gene
Exon / Gene
Total Transcript
Exon (bp)
Intron (bp)
CDS (bp)
Max
Median
Min
Max
Median
Min
Max
Median
Min
Aedes aegypti AaegL1
17356
3.71877
18769
13140
230
1
329294
166
1
33984
1050
78
Amphimedon queenslandica Aqu1
30289
5.67803
30289
45177
125
1
50310
84
0
47673
837
16
Anopheles gambiae AgamP3
13465
4.08734
15322
14035
237
1
249417
96
1
47532
1188
75
Apis mellifera Amel 2 0
10736
6.42632
11058
13210
180
1
734966
127
1
53646
1203
21
Atta cephalotes Attacep1 0
18062
4.64179
18093
11406
170
3
402844
210
1
24183
648
3
Bombyx mori Bmor1
14623
5.44245
14623
53798
159
1
9993
720
12
56286
864
86
Caenorhabditis briggsae CB4
22922
5.34233
22947
17127
151
1
82249
65
1
40740
927
12
Caenorhabditis elegans WBcel215
45836
3.41548
56569
14975
144
1
100913
79
1
55686
1038
39
Culex quinquefasciatus CpipJ1
22985
3.27309
23049
12993
188
1
95576
121
1
27324
1017
87
Danaus plexippus DanPle 1 0
16260
5.88678
16260
31119
152
2
156604
287
10
56718
870
42
Daphnia pulex Dappu1
36274
4.14269
36274
12783
150
1
48487
77
0
23328
699
147
Drosophila ananassae dana caf1
15978
3.58174
16061
13661
216
2
1034096
67
1
26715
1081.5
99
Drosophila erecta dere caf1
15810
3.58836
15902
13790
214
1
1121756
73
1
26610
1068
63
Drosophila grimshawi dgri caf1
15585
3.64921
15677
13188
217
1
216011
84
1
26532
1086
114
Drosophila melanogaster BDGP5
15682
4.06281
29173
28074
282
1
141627
109
2
68847
1401
33
Drosophila mojavensis dmoj caf1
15179
3.64089
15258
14595
217
2
245033
75
1
26778
1101
102
Drosophila persimilis dper caf1
17573
3.36966
17658
9522
214
1
160788
71
1
24360
939
69
Drosophila pseudoobscura HGSC2
16768
3.48754
18100
16920
222
2
168194
71
1
55446
1104
33
Drosophila sechellia dsec caf1
17273
3.4063
17362
11004
212
1
173070
73
1
43653
951
24
Drosophila virilis dvir caf1
15343
3.62582
15424
23577
216
1
535952
73
1
40497
1113
90
Drosophila willistoni dwil caf1
16385
3.48911
16469
21318
219
2
682464
73
1
27621
1059
87
Drosophila yakuba dyak r1 3 FB2008 07
16891
3.52034
16983
13188
213
2
161037
74
1
26790
1023
36
Heliconius melpomene Hmel1
16203
5.79658
16363
30639
157
2
188384
428
0
46440
993
42
Ixodes scapularis IscaW1
24925
3.77083
24925
7779
141
1
177576
1608
15
13764
591
95
Nematostella vectensis ASM20922v1
27270
5.25966
27270
12085
126
1
48615
441
0
26235
750
147
Pediculus humanus PhumU1
10990
6.32402
10992
14871
178
2
52922
95
8
32199
1131
135
Schistosoma mansoni sma v3 1
14651
5.09406
16054
79759
170
3
67221
1579
1
22980
873
60
Strongylocentrotus purpuratus Spur2 5
28549
6.54275
28549
63039
145
2
574472
742
0
29134
1061
15
Tribolium castaneum Tcas3
16541
4.34194
16543
26331
198
1
310600
60
1
63351
993
45
Trichinella spiralis Tspiralis1
15461
5.49376
15461
10056
129
1
8636
87
10
37257
588
5
Trichoplax adhaerens ASM15027v1
11627
8.35504
11627
18339
105
2
48786
139
11
23130
1035
147

Ensembl Fungi gtf Summary



Ensembl에서 제공하는 Fungi의 gtf 정보를 사용하여 Summary 해보았습니다.

2주전부터 올릴려고 하고 있었는데 bug 및 계산 착오로 인해서 몇번 수정하느라 늦었습니다. 조만간 업데이트 할 예정입니다. :)

Name (Ensembl)
Total Gene
Exon / Gene
Total Transcript
Exon (bp)
Intron (bp)
CDS (bp)
Max
Median
Min
Max
Median
Min
Max
Median
Min
Ashbya gossypii (ASM9102v1)
5189
1.053
5189
14700
1098
1
666
61
1
14697
1215.0
75
Aspergillus clavatus (CADRE)
9452
3.001
9452
14778
250
2
2397
63
7
24606
1239.0
126
Aspergillus flavus (JCVI-afl1-v2.0)
13875
2.776
13875
14742
258
3
8254
62
8
23289
1056.0
147
Aspergillus fumigatusa1163 (CADRE)
10160
2.886
10160
14778
267
2
2678
61
8
24780
1218.0
63
Aspergillus fumigatus (CADRE)
9898
2.887
9898
25548
272
2
3092
60
1
25545
1245.0
63
Aspergillus nidulans (ASM14920v1)
10827
3.299
10827
18015
245
1
3570
61
1
21642
1236.0
27
Aspergillus niger (CADRE)
14445
3.523
14445
13734
175
1
2702
69
1
21105
1086.0
30
Aspergillus oryzae (CADRE2)
12388
2.885
12388
14742
248
2
2753
62
1
20655
1114.5
300
Aspergillus terreus (CADRE)
10601
3.142
10601
13746
258
1
1425575
59
14
17526
1260.0
147
Botryotinia fuckeliana (BotFuc Aug2005)
16727
2.604
16727
12278
189
1
7371
75
22
20424
744.0
87
Fusarium oxysporum (FO2)
18066
2.670
18066
13941
286
1
2370
59
4
22593
1014.0
3
Gaeumannomyces graminis (Gae graminis V2)
14771
2.649
14963
16454
364
1
9098
88
4
19899
1041.0
96
Gibberella moniliformis (ASM14955v1)
14602
2.730
14621
22425
300
1
989
58
22
22647
1056.0
84
Gibberella zeae (ASM24013v2)
13696
2.767
13697
29066
280
1
975
56
1
33591
1098.0
87
Glomerella graminicola (GCA 000149035.1)
12436
2.685
12436
26808
276
1
2183
64
10
26805
1158.0
93
Komagataella pastoris (GCA 000027005.1)
5228
1.111
5228
14853
1053
2
903
63
10
14850
1188.0
135
Leptosphaeria maculans (ASM23037v1)
12765
2.781
12765
20704
215
3
5775
64
40
29229
999.0
99
Magnaporthe oryzae (MG8)
13218
2.726
13382
18290
361
3
2120
89
5
19623
1083.0
102
Magnaporthe poae (Mag poae ATCC 64411 V1)
12389
2.720
12555
14426
407
2
2101
88
21
18789
1005.0
93
Melampsora laricipopulina (GCA 000204055.1)
16828
4.739
16828
16603
150
1
35273
80
10
15816
900.0
102
Nectria haematococca (v2.0)
16092
3.031
16092
22950
281
1
8864
55
11
22947
1233.0
147
Neosartorya fischeri (CADRE)
10805
2.912
10805
14781
261
2
1506
59
8
18807
1221.0
90
Neurospora crassa (ASM18292v1)
10413
2.644
10432
15030
260
1
1274
85
32
32460
1212.0
87
Phaeosphaeria nodorum (ASM14691v1)
12678
2.626
12678
18212
295
1
1744
56
14
21135
1044.0
63
Puccinia graminis (ASM14992v1)
16481
4.293
16660
5473
176
1
1700
86
21
15642
924.0
87
Puccinia triticina (ASM15152v1)
13330
3.859
13330
8664
168
1
3818
83
15
14283
912.0
147
Pyrenophora teres (GCA 000166005.1)
11958
2.484
11958
9963
310
5
5050
54
21
29457
1143.0
150
Pyrenophora triticirepentis (GCA 000149985.1)
12387
2.638
12387
14088
303
3
2108
57
23
29079
1107.0
117
Saccharomyces cerevisiae (SacCer Apr2011)
7126
1.060
7126
14733
951
1
2483
100
1
14730
1075.5
48
Schizosaccharomyces pombe (ASM294v1)
7018
1.764
7019
14362
565
2
2526
56
1
14772
1134.0
72
Sclerotinia sclerotiorum (ASM14694v1)
10413
2.756
10413
17212
183
1
1494
79
24
20313
819.0
84
Sporisorium reilianum (GCA 000230245.1)
6803
1.452
6803
15883
843
1
2252
87
1
16272
1473.0
75
Trichoderma virens (ASM17099v1)
12698
2.865
12704
61919
297
2
9208
68
10
62673
1140.0
132
Tuber melanosporum (ASM15164v1)
7727
3.786
7727
25158
272.5
6
31660
63
9
28635
1077.0
30
Ustilago maydis (UM1)
6690
1.732
6690
16296
549
1
1122
95
19
16293
1503.0
60
Zymoseptoria tritici (MG2)
11075
2.591
11075
12888
298
2
42135
62
11
13839
1068.0
147

목요일, 2월 14, 2013

ALTER 문법을 이용한 character set

Posted at 2008/08/25


Database 변환
alter database database_name default character set euckr collate euckr_korean_ci


Table 변환
alter table table_name default character set euckr collate euckr_korean_ci

수요일, 1월 30, 2013

FASTX Tool Kit에서 phred33 사용하기

FAST{A/Q} 파일을 조작(그 조작말고요 고갱님~ ㅎㅎ)을
보다 수월하게 하는 명령어들을 모아놓은 아주 좋은 패키지 입니다.
(사실 전 몇개 안쓰지만요;;; 잇힝~ )

그러나 지금은 이 툴보다 좋은 프로그램들이 많이나와 있는 상태인데..

그래도 끄적 끄적... ㅎㅎ
혹시 다른 페이지들이 폐쇄되는걸 대비해서
백업용으로.....

fasta tool에서 fastx_quality_stats를 사용할 때 quality score관련한 error 메세지를 볼 수 있는데 이것은 fasta tool kit이 phred기준 +64를 좋아해서 그런다는...

그래서 fastx_quality_stats -i input.fastq -N -Q 33 -o quality.txt

이렇게 하면 된다고 이곳에 나와 있었습니다.

출처: shengliblog

화요일, 1월 29, 2013

NGSQCToolkit 사용기

아.... 이제서야
지난번에 언급했던
NGS QC Toolkit을 사용해 봤습니다. :)

라이브러리와 perl 모듈을 잘 설치해주면
큰 문제없이 잘 돌아가는것을 확인했고
multi-thread로 실행하는 경우 음.. 빠르더라구요 ㅎㅎ
시간 체크는 못해봤는데...
지금 시간체크 하면서 돌리는게 있으니
정리해서 올리도록 하겠습니다. :)

1. 들어가기전
일단 시스템에 gd관련 라이브러리가 있는지 확인하시고
gd와 libgd-graph 등등 관련 라이브러리를 설치해주시기 바랍니다.
그리고 perl 모듈들이 모두 설치되어 있는지 확인해서 안되어 있다면
설치해주시면 되겠습니다.
gd라이브러리가 없으면 펄의 GD::Graph 설치할때 설치가 안되더군요;;
에러가 나서 몬가 하고 있었는데.. ㅎㅎ 여하튼...
모 이런저런 라이브러리와 모듈을 확인하시고 잘 설치하면
사용하는데 문제 없습니다. :)

2. 사용하기
NGQQCToolkit에는 크게 4가지의 서브 카테고리로 구분되어져 있더군요
1) 포맷 변경
2) QC
3) 자료 통계
4) Trimming

2.1 Format Convert
Fastq -> {454 | Fasta}: Fastq를 454(Fastq,Qual), Fasta 포맷으로 변환

{SangerFastq | SolexaFastq} -> IlluFastq: Sanger와 Solexa의 qual를 Illumina의 통일된 qual score range로 변환 (다만, 1.5+ 로 하는지 1.8+ 로 하는지는 확인 못했습니다.)


2.2 QC
454{QC|QC_PE|QC_PRLL}: 454 데이터를 input으로 하는 QC tools
Illumina와 다르게 QC_PE가 있는건 454의 경우 paired-end로 sequencing 하는 경우는 좀 특별해서 구분해둔듯.. :) (단, input은 SFF 포맷이 아닌 서열 파일과 Quality score파일로 구분해서 입력해야 사용가능하다.)

Ill{QC|QC_PRLL}: 일루미나 read를 처리하는 tools, 454와는 다르게 single-end와 paired-end를 따로 구분하지 않고 -se, -pe 옵션으로 처리하도록 만들어놨다는 점~ :)

PRLL 접미사는 병렬처리를 지원하는 스크립트입니다.
PRLL tools에서는 -c를 사용해서 multi-core를 사용하는데에 반해
일반 tools는 -p 옵션을  사용해도 multi-core를 사용하지 않는 점이 있었습니다.


2.3 Statistics
AvgQuality.pl: quality score 파일을 입력받아 점수를 계산하는 tool
N50Stat.pl: fasta파일을 input으로 받아 N50을 계산하는 tool

2.4 Trimming
AmbiguityFiltering.pl:
HomopolymerTrimming.pl:
TrimmingReads.pl:

결과로 제공되는 figure도 나름 괜찮습니다. :)
속도도 multi-core를 사용하던 안하던 만족할만한 수준이었습니다.
(제가 in-House로 제작한 script가 느린것도 있겠지만요.. ㅎㅎ )


자세한 사용법은 저보다 영어 못하시는 분은 없을테니 메뉴얼 보세요~ ㅎㅎ

>>메뉴얼보러가기<<


추가정보
paired-end fastq raw파일로 3-4g정도의 파일을 single cpu로 처리하는데
2시간에서 2시간 반내외정도로 확인되었습니다. :)

금요일, 1월 25, 2013

의학데이터를 공유하자



의학데이터를 공유하자는 용자 John





자발적 참여로 데이터를 수집하는 사이트 WeConsent

John의 설문조사 결과로는
사람은 기회와 선택이 주어지면 나누려고 한다고 한다.

공유할 데이터는 꼭 거창해야만 하는 건 아니다.
헌혈하면 배달되는 피검사 수치도 가능한듯 보이는데...
나중에 한번 올려볼까한다. :)

강연중 언급한 Sage Bionetworks

월요일, 1월 07, 2013

swap를 설정해야 하는가 말아야 하는가


IBM: swap 활용하기

김용환 블로그: SWAP 메모리


사실 집에서 쓰는 간단한 파일 서버나 데탑에서는
크게 신경 안쓰는 부분인데 서버 작업을 하게 될때는
신경을 안쓸 수 가 없다는.....

집에서 쓰는거야 램이 16G니 대충 다른 HDD에 4G만 잡아주고 쓰고 있고
개인서버인 경우는 RAM이 4G니 CPU core(x2) 곱하기 메모리 용량해서
하드에 swap잡으면 8G면 충분하다(HDD가 죄다 500G, 1T니.. ㅎㅎ).

그런데 서버로 오면
메모리 용량이 24G, 32G, 192G에
CPU core는 2, 8, 24개....
극악의 조건이라면 swap을 full로 잡는다면 4T라는;;;;

근데 사실 swap을 다 쓴다는건 서버의 문제라기 보다는
서버를 운영하는 관리자에게 책임이 더 있지 않나하다.
메모리를 다쓰고 swap까지 쓰는 동안 무엇을 했는지 그것도 계산 못하고
작업을 돌리고 있는가...

근래 많이 접하는 서버들이
고성능 CPU에 대용량 RAM, 그리고 SSD 시스템 하드에 HDD 12개 이상의 RAID인데,

어디다가 swap를 잡을것인가....
SSD에 잡기에는 OS설치하고 패키지 설치하기 빠듯한데...
(물론 256G이상의 조금 넉넉한 SSD라면 크게 상관없을듯)
그리고 RAID하드, RAID에 왜 swap을....;;;;

case에 HDD 공간이 남는다면 single하드를 꼽아서 swap를 잡는걸 한번 권유해보고 싶고
넉넉한 SSD라면 자그만하게 잡아주면 좋지 않을까 하다.

사실 지금 어느 서버 한대는 swap없이 운영중인것으로 기억하는데
아직 3개월 지났는데 메모리 문제로 다운되서 작업 못한 적은 없다는..
사용할 메모리 계산만 잘 해서 쓰면 swap따위... ㅎㅎ


계산용 서버라면 이렇지만
web이나 db서비스를 하는 경우라면 조금이라도 swap을 잡는게 좋을듯...
언제 어떻게 본인도 모르게 부하가 걸릴지도 모르니...
서비스용 시스템에서 하드웨어 스펙의 넉넉함의 미덕은
24x7x365 강조해도 모자람이 없는것 정도?? ㅎㅎ

swap한번 걸리면 그냥 대책없이 느려진다는..
메모리를 더 꼽거나 업그레이드를 시키는것이
모든 면에서 합리적이고, 효율적이다.

결론 swap은 당신이 속해있는 시스템 관리자의 능력에 맡기는 수 밖에 없는듯.. :)



MySQL에서 LIMIT 속도 저하 피하기



출처: 아이군의 블로그


위의 블로그에서 LIMIT에 대해서 이해하기 쉽게 설명해 놓으셔서
스리슬적~ :)


Query 1.
SELECT * FROM TABLE LIMIT 10000000, 50000;
(Table에서 천만개 데이터 이후의 5만개 데이터를 가져오는 쿼리)

Query 2.
SELECT * FROM TABLE WHERE id > 10000000 LIMIT 50000;
(Table에서 id가 천만번보다 큰 행으로 이동 한 후 5만개를 가져오는 쿼리)

Query 1과 Query 2의 차이점은 index를 사용하는 것과 하지 않는 것!!
(query 문 앞에 explain을 추가하여 실행시키면 확인 할 수 있습니다.)

그래서 처리 속도에서 엄청난 차이가 났다는 것입죠
LIMIT를 사용하더라도 영리하게 사용하자는 내용이었습니다. :)

MySQL 안다뤄본지 오래돼서..... ;;

토요일, 1월 05, 2013

리눅스에서 파일 찾는 locate


리눅스에서 파일 찾는 명령어로
find를 많이 사용할 것이다.

그러나 find보다 사용하기 쉬운 (본인 기준으로...) 명령어가 있다.

locate

find와 같이 파일을 찾는 명령어이나 find와 달리 DB를 이용하여 파일 찾기 때문에 속도가 WARP~


사용방법은 간단하다.
> locate <파일 이름>
자세한 사용 방법은 man이나 help를 이용하기를 :)

> locate -n 5 <파일 이름>
은 결과물을 5개 까지만 보여주는 옵션이다.

대신 위에서 언급한 것과 같이 DB를 검색하는 것이므로 DB를 주기적으로 update해주어야 하며 그에 사용되는 명령어는 updatedb 이다.

서버 셋팅 후 매시간 혹인 매일 주기적으러 갱신되도록 cron에 등록하면 편리하다.

수요일, 12월 19, 2012

생명정보학을 공부하면서 궁금한게 있다면 이곳으로~!!


http://openbio.kr/questions/

혜식형님이 (시간이 남아돌아서..)만든 사이트

슬슬 글들이 올라오고 있습니다.

궁금하신것이나 알고 있는 정보들에 있어서 함께 공유하고
해결하면 좋을 것 같습니다. :)