我有一個目錄中的PDB(文本)文件。我想打印每個PDB文件中的子單元的數量。如何用awk,python或biopython從PDB文件獲取子單元的數量?
- 閱讀PDB文件與
ATOM
- 的
ATOM
行的第五列包含A
,B
,C
,D
等 - 如果它只包含
A
亞基的數量開始的所有行1.如果它包含A
和B
,亞基的數目是2.如果它包含A
,B
和C
,亞基的數目是3.
1kg2.pdb文件
ATOM 1363 N ASN A 258 82.149 -23.468 9.733 1.00 57.80 N
ATOM 1364 CA ASN A 258 82.494 -22.084 9.356 1.00 62.98 C
ATOM 1395 C MET B 196 34.816 -51.911 11.750 1.00 49.79 C
ATOM 1396 O MET B 196 35.611 -52.439 10.963 1.00 47.65 O
1uz3.pdb文件
ATOM 1384 O ARG A 260 80.505 -20.450 15.420 1.00 22.10 O
ATOM 1385 CB ARG A 260 78.980 -18.077 15.207 1.00 36.88 C
ATOM 1399 SD MET B 196 34.003 -52.544 16.664 1.00 57.16 S
ATOM 1401 N ASP C 197 34.781 -50.611 12.007 1.00 44.30 N
2b69.pdb文件
ATOM 1393 N MET B 196 33.300 -54.017 12.033 1.00 46.46 N
ATOM 1394 CA MET B 196 33.782 -52.714 12.566 1.00 49.99 C
期望的輸出
pdb_id subunits
1kg2 2
1uz3 3
2b69 1
如何用awk,python或Biopython做到這一點?
歡迎的StackOverflow!你有什麼嘗試?你有沒有看過BioPython中的'Bio.PDB.PDBParser'類?有文檔[這裏](http://biopython.org/DIST/docs/tutorial/Tutorial.html#htoc138),甚至有一篇關於它的論文(http://www.ncbi.nlm.nih.gov/pubmed)/14630660) –