计数分数

时间:2013-10-28 20:15:44

标签: python-2.7

我的问题是numpy数组和分数计算

1 个答案:

答案 0 :(得分:0)

问题是,当你做:

str(data[:,i:i+1])

如果数组的长度为< = 1000

,则numpy.array __str__方法返回所需的输出

但是当长度> 1000它会返回如下内容:

[['E']
['E']
['E']
..., 
['E']
['E']
['E']]

所以有错误!尝试修改您的方法,以便计算匹配而不是字符串。我也会试着找出来。

修改

使用numpy.array方法将tolist()转换为列表是解决方案:

list = []
for i in range(len(wtseq)):
    a = float(str(data[:,i:i+1].tolist()).count(wtseq[i])) / len(datainput)
    list.append(a)
print list