https://github.com/goldengrape/check_patentIn_sequence
本程序用于檢查專利文件中的蛋白質(zhì)序列是否一致. 在專利撰寫時(shí), 發(fā)明人往往在技術(shù)交底書中使用Word文件來提交蛋白質(zhì)序列. 而在USPTO的要求中, 需要使用PatentIn軟件來生成標(biāo)準(zhǔn)的序列提交文件.
專利代理人在撰寫專利說明書時(shí)可能通過ctrl+C/ ctrl+V 等操作將技術(shù)交底書中的序列復(fù)制粘貼到PatentIn軟件中, 在這一動(dòng)作中有可能引起增加或減少字母, 造成說明書中的序列與發(fā)明人所期望的序列不一致.
適用文件形式
適用文件的樣例在demo文件夾中. 其中:
- 技術(shù)交底書樣例, AAA.docx,序列以word表格的形式出現(xiàn)
- PantentIn生成文件樣例, BBB.txt
安裝
推薦使用Microsoft Azure Notebooks在云端運(yùn)行.
Azure Notebooks安裝
- 打開https://notebooks.azure.com 以注冊(cè)或以MS賬戶登錄.
- 新建Lib: +New Library
- 從Github中導(dǎo)入:
- 在GitHub repository中填入: https://github.com/goldengrape/check_patentIn_sequence
- 自行設(shè)定好Library Name和Library ID
- Import
- 設(shè)置:
- 選擇剛剛建立的Library, 點(diǎn)擊Setting
- Infomation: 如果不想泄露數(shù)據(jù), 請(qǐng)確認(rèn) Public library 不被選上
- Environment: Shell scirpt->script.txt
在本地電腦安裝
依賴包
- python 3.5
- biopython
- python-docx
- numpy
- pandas
太麻煩了, 你不會(huì)真的打算本地運(yùn)行吧. 實(shí)在要裝的話推薦使用anaconda進(jìn)行安裝, 但anaconda裝python-docx有坑, 最好調(diào)用anaconda下的pip進(jìn)行安裝python-docx.
安裝
從github clone.
使用
- 上傳或copy需要檢查校對(duì)的文件到指定的目錄.
- 打開compare_seq.ipynb
- 設(shè)定文件名:
input_path='demo' output_path='demo' docx_name='AAA.docx' txt_name='BBB.txt'
- 指定word文件中表格的屬性
其中:table_catalog_dict={ 0: {"head": 1, "seqtype":'chain', "chaintype":'HeavyChain'}, 1: {"head": 1, "seqtype":'chain', "chaintype":'LightChain'}, 2: {"head": 2, "seqtype":'CDR', "chaintype":'HC'}, 3: {"head": 2, "seqtype":'CDR', "chaintype":'LC'}, 4: {"head": 1, "seqtype":'chain', "chaintype":'HeavyChain'}, 5: {"head": 1, "seqtype":'chain', "chaintype":'LightChain'},
- head: 表格中標(biāo)題行的行數(shù)
- seqtype: 表格所描述的序列是長(zhǎng)鏈chain或是CDR
- chaintype: 序列的類型, 是
- HeavyChain: 重鏈
- LightChain: 輕鏈
- HC: 重鏈CDR
- LC: 輕鏈CDR
- 完成設(shè)定后, 在菜單中選擇Kernel->restart&run all
- 結(jié)果:
- 結(jié)果首先會(huì)顯示在程序頁(yè)面中
- 結(jié)果以report.txt文件存儲(chǔ)在output_path所指定的路徑中
- 為方便進(jìn)一步處理,
- PatnetIn生成的txt文件, 會(huì)被轉(zhuǎn)換成同名的json文件和csv文件.
- word文件, 會(huì)被轉(zhuǎn)換成同名的csv文件.
更新
本程序還將不斷更新.
在Azure Notebooks中更新
- 點(diǎn)擊Terminal
- 輸入
cd Library
- 輸入
git checkout .
注意末尾有個(gè)點(diǎn) - 輸入
git pull