這段**的意思是,先找出每一豎列出現次數最多的鹼基,再根據出現的頻率進行排序,再用特徵序列的鹼基位置找到原序列真實的鹼基,形成乙個訓練集,為之後的神經網路訓練做準備。
我這裡使用的蛋白質序列都是事先用muscle跑過的(不知道muscle的同學可以搜一下『多序列比對軟體muscle 』)
#!/usr/bin/python
#coding=utf-8
import string
import numpy as np
from collections import counter
nb_seq=0
with open('a6.fasta','r') as a1:
with open('sequence.fasta','w') as a1sen:
for line in a1.readlines():
line=line.strip('\n')
if'>' not in line:
a1sen.write(line)
if'>'in line :
a1sen.write('.')
nb_seq+=1
a1.close()
a1sen.close()
a1sen= open('sequence.fasta')
ntxt=a1sen.read()
txt=ntxt[:0]+ntxt[1:]
slist=[0 for col in range(nb_seq)]
for i in range (nb_seq):
slist[i]= txt.split('.')[i] #原序列
comlist=str()
lsen=str()
#print slist
wei_list=[[0 for col in range(3)] for row in range(1000)]#乙個二維列表,存放鹼基,鹼基出現的頻率以及位置
k=0for j in range(len(slist[0])): #這乙個大迴圈給二維陣列賦了值
for i in range(nb_seq):
comlist=comlist+slist[i][j]
if ( counter(comlist).most_common(1)[0][0]!='-'):
if(counter(comlist).most_common(1)[0][1]>(nb_seq/2)):
lsen=lsen+counter(comlist).most_common(1)[0][0]
wei_list[k][0]=counter(comlist).most_common(1)[0][0]
wei_list[k][1]=counter(comlist).most_common(1)[0][1]
wei_list[k][2]=j
k+=1
#print comlist
comlist=''#重置
wei_list.sort(reverse=true,key=lambda x:x[1])#逆序排列
seq_real=str()
with open('a6train.fasta','w')as a1train:
for i in range(nb_seq):
for j in range(100):
seq_real=seq_real+slist[i][wei_list[j][2]]
a1train.write(seq_real)#一句一句寫到最終輸出的檔案裡去
print len(seq_real)
a1train.write('\n')
seq_real=''#重置
a1train.close()
本人是正在做畢設的低水平菜鳥。
常見蛋白質種類 什麼是優質蛋白質?雞蛋大豆算不算
蛋白質都是由氨基酸構成的,大部分的氨基酸可以在人體內合成,但是有八種氨基酸是人體無法合成,只能從食物中獲取的,這八種氨基酸就叫做必需氨基酸,其中,嬰兒有9種。八種必需氨基酸的為 甲硫氨酸 蛋氨酸 異亮氨酸 纈氨酸 亮氨酸 苯丙氨酸 色氨酸 蘇氨酸 賴氨酸 嬰兒還包括組氨酸 食物蛋白質中,如果有一種或...
蛋白質結構與功能
蛋白質結構與功能 一 蛋白質的一級結構 1.定義 蛋白質分子從n 端至c 端的氨基酸排列順序。2.主要化學鍵 共價鍵 肽鍵 二硫鍵 少數 3.第乙個被確定一級結構的蛋白質 胰島素。4.結構測定 純蛋白質 二硫鍵拆開 末端氨基酸測定 二 蛋白質的二級結構 1.定義 蛋白質分子中某一段肽鏈的區域性空間結...
蛋白質濃度與鹽脅迫的關係 蛋白質的分離純化(二)
從原料中抽提得到的蛋白質溶液一般蛋白質含量較低,並含有多種雜質。對抽提液進行初步提取,也稱粗提或粗分級,主要目的是除去糖 脂類 核酸及大部分雜蛋白,並將蛋白濃縮。這一步的操作一般應該盡量簡單快速,並且適於處理大量樣品,所以以沉澱法為主,包括簡單沉澱 分級沉澱等。簡單沉澱是一次性完成,分級沉澱是分次加...