运行命令行和基于web的mhc绑定预测程序的python接口

mhctools的Python项目详细描述


Build StatusCoverage StatusPyPI

mhctools

运行命令行和基于web的mhc绑定预测程序的python接口。

命令行示例

预测用户提供的肽序列

mhctools --sequence SIINFEKL SIINFEKLQ --mhc-predictor netmhc --mhc-alleles A0201

自动提取肽作为指定长度的子序列

mhctools --sequence AAAQQQSIINFEKL --extract-subsequences --mhc-peptide-lengths 8-10 --mhc-predictor mhcflurry --mhc-alleles A0201

python用法

frommhctoolsimportNetMHCpan# Run NetMHCpan for alleles HLA-A*01:01 and HLA-A*02:01predictor=NetMHCpan(alleles=["A*02:01","hla-a0101"])# scan the short proteins 1L2Y and 1L3Y for epitopesprotein_sequences={"1L2Y":"NLYIQWLKDGGPSSGRPPPS","1L3Y":"ECDTINCERYNGQVCGGPGRGLCFCGKCRCHPGFEGSACQA"}binding_predictions=predictor.predict_subsequences(protein_sequences,peptide_lengths=[9])# flatten binding predictions into a Pandas DataFramedf=binding_predictions.to_dataframe()# epitope collection is sorted by percentile rank# of binding predictionsforbinding_predictioninbinding_predictions:ifbinding_prediction.affinity<100:print("Strong binder: %s"%(binding_prediction,))

API

以下mhc绑定预测器在mhctools中可用:

  • MHCflurry:默认与mhctools一起安装的开源预测程序,要求用户首先运行mhcflurry-downloads fetch以下载mhcflurry模型
  • NetMHC3:需要本地安装的NetMHC 3.x版本
  • NetMHC4:需要本地安装的NetMHC 4.x版本
  • NetMHC:根据安装的内容自动使用NetMHC3NetMHC4的包装函数。
  • NetMHCpan:需要本地安装的NetMHCpan版本
  • NetMHCIIpan:需要本地安装的NetMHCIIpan版本
  • NetMHCcons:需要本地安装的NetMHCcons版本
  • IedbMhcClass1:使用iedb的rest api进行类i绑定预测。
  • IedbMhcClass2:使用iedb的rest api进行类ii绑定预测。
  • RandomBindingPredictor:创建具有随机IC50和百分位秩值的绑定预测。

每个绑定预测器都由一个指定要进行预测的hla类型的alleles参数构造。预测是通过调用predict方法生成的,该方法通过字典将序列id或名称映射到氨基酸序列。

此外,还有一个模块用于运行NetChop蛋白质体切割预测器:

欢迎加入QQ群-->: 979659372 Python中文网_新手群

推荐PyPI第三方库


热门话题
java是否存在这样一种场景:Java7的Hashmap实现优于Java8的实现   java如何打印这些完整的数组?   java BuildException:未能执行aapt   java如何使用类。未知类型的集合返回的cast()   java准备语句返回错误的值   webview 安卓中的java显示身份验证对话框   java如何重命名列名JPA Hibernate   java查询从特定用户和特定时间段的Oracle表(通过比较原始表和备份表)中选择修改的行   java Youtube视频仅在三星S6设备上加载时自动暂停   未调用java RecyclerView getItemViewType   使用JSch setCommand执行带有源选项的java Shell ping命令时失败   java Hibernate:无法删除|删除分离的实例   Java Spring@MappedSuperclass字段作为子类中的@Id字段   java Android:确定单击了哪个按钮,因为该按钮未在xml中定义   如何计算java阵列内存使用率   使用Java查找按字母顺序排列的第一个字符串   javascript注销功能刷新页面,但页面仍已登录   当接口作为参数提供时,java依赖项注入不起作用   java中带原语的字符串扭曲