PseAAC特征提取实现

本文主要介绍对于protein序列的PseAAC特征编码
第一种方法,直接用server版:
http://bioinformatics.hitsz.edu.cn/Pse-in-One2.0/server/
这里面啥编码方式都有,基本都是针对序列数据的,可以对DNA和RNA以及protein实现编码
protein的界面如下(在这个里面可以选择编码方式,以及该类型编码所需要的参数。):
在这里插入图片描述
值得注意的是,目前server版的,只是支持目前20种氨基酸的编码,不能对补位的氨基酸符号进行编码
第二种,本地版:
如果想要批处理,那肯定得用本地版,server版肯定不得行,会限制你提交的序列数量
目前一共有三种代码版本。
No.1 git版本1,折腾我一下午,不得行,有兴趣的可以研究研究,这个是C语言版本的,最大的问题在于,他写的这个readme是针对新版本的,而他使用的是原先版本pse工具,路径比较难对应
https://github.com/pufengdu/PseAAC-General
No.2 Git2版本2,使用matlib,这是论文源码,目前对matlib不是

  • 0
    点赞
  • 7
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 4
    评论
PseAACPseudo Amino Acid Composition)是一种用于蛋白质序列特征提取的方法,它将蛋白质序列表示为一组伪氨基酸组成。下面是一个简单的Python代码示例,用于计算PseAAC特征: ```python import numpy as np def calculate_pse_aac(sequence, k=1, lamda=10, weight=0.5): # 定义20种氨基酸的属性 amino_acids = 'ACDEFGHIKLMNPQRSTVWY' properties = { 'A': [1.0, 0.0, 0.0, 0.0], 'C': [0.0, 1.0, 0.0, 0.0], 'D': [0.0, 0.0, 1.0, 0.0], 'E': [0.0, 0.0, 1.0, 0.0], 'F': [0.0, 0.0, 0.0, 1.0], 'G': [1.0, 0.0, 0.0, 0.0], 'H': [0.0, 1.0, 1.0, 0.5], 'I': [1.0, 1.0, 0.0, 1.0], 'K': [0.0, 1.0, 1.0, 1.0], 'L': [1.0, 1.0, 0.0, 1.0], 'M': [1.0, 1.0, 0.0, 0.0], 'N': [0.0, 0.0, 1.0, 0.0], 'P': [0.0, 0.0, 0.0, 0.0], 'Q': [0.0, 0.0, 1.0, 0.0], 'R': [0.0, 1.0, 1.0, 1.0], 'S': [0.0, 0.0, 1.0, 0.0], 'T': [0.0, 0.0, 1.0, 0.0], 'V': [1.0, 1.0, 0.0, 1.0], 'W': [0.0, 1.0, 1.0, 1.0], 'Y': [0.0, 1.0, 1.0, 1.0] } # 计算每个氨基酸的属性向量 sequence = sequence.upper() feature_vector = [] for amino_acid in sequence: if amino_acid in amino_acids: feature_vector.extend(properties[amino_acid]) # 计算PseAAC特征 pse_aac = [] for i in range(k): pse_aac_i = [] for j in range(4): pse_aac_i_j = 0 for l in range(len(sequence)-i-1): pse_aac_i_j += (feature_vector[l*4+j] * feature_vector[(l+i+1)*4+j]) pse_aac_i.append(pse_aac_i_j) pse_aac.extend(pse_aac_i) # 归一化处理 pse_aac = np.array(pse_aac) pse_aac = pse_aac / np.sum(pse_aac) # 平滑处理 pse_aac = (pse_aac * lamda + weight) / (lamda + 1) return pse_aac.tolist() # 示例用法 sequence = 'ACDEFGHIKLMNPQRSTVWY' pse_aac = calculate_pse_aac(sequence, k=1, lamda=10, weight=0.5) print(pse_aac) ``` 这段代码实现PseAAC特征的计算,输入蛋白质序列,可以得到对应的PseAAC特征向量。你可以根据需要调整参数k、lamda和weight来适应不同的情况。
评论 4
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

这个人很懒,还没有设置昵称...

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值