启动子基频矩阵python

2024-05-15 10:05:47 发布

您现在位置:Python中文网/ 问答频道 /正文

所以我想写一个程序,根据它的位置,给我一个特定的基在一个启动程序的频率。 例如: ACTGCTGATAGC GTAGGTAGCTAGTA 对于这些,在seq[0]中,A=1,因为在第一列中,A仅出现一次。 下面是“草图”,或者说如果你愿意的话,还没有完成的程序。

import numpy as np

def pfm(x, sequence):

a=0
t=0
c=0
g=0
y=np.array([[]])
for bases in sequence[z]:
    if sequence[z]==a:
        a+=1
    elif sequence[z]==t:
        t+=1
    elif sequence[z]==c:
        c+=1
    elif sequence[z]==g:
        g+=1
    return np.append(y,
    a=0
    t=0
    c=0
    g=0
    z+=1

x=input("Please enter the number of sequences you wish to analyze: ")
etc...

你可以看到,我显然没有完成它,因为一个特定的问题。我想附加到空集,但是我一直得到错误“ValueError:除了连接轴之外的所有输入数组维度必须完全匹配”,当我在shell中将其部分输出时。所以我想知道如何将4*1矩阵附加到空集。我的想法是,每次这样做,我都会将基计数设置回0,并继续附加相应的列。 谢谢。


Tags: import程序numpydefasnpseq频率
1条回答
网友
1楼 · 发布于 2024-05-15 10:05:47

如果序列的大小相同: 例如:

['atatatg', 
 'atgcatg',
 'acggtaa', 
 'tagcgta']

你可以这样做:

^{pr2}$

会给你:

^{3}$

你在所有序列的第一个位置有3个a,等等。。。在

相关问题 更多 >