每百万特定字符数

时间:2014-11-12 12:55:06

标签: python split character

首先,我正在使用Python。

我试图找到染色体中每百万个字符的特定字符数(碱基对)。

例如:

我希望a,g,t和c的次数,以及A,G,T和C出现在导入的文件中。

我能够(到目前为止)使用" Counter"来计算整个文件的这些字符的数量,但是我不熟悉如何每百万分辨一次?

提前致谢!

1 个答案:

答案 0 :(得分:0)

如果导入文件看起来像字符序列:

  

... agtcAGTCagtcAGTCagtcAGTCagtcAGTC

然后你可以应用这种方法:

file = 'c:\\test\\chromosome.txt'

aCount = []
gCount = []
tCount = []
cCount = []
ACount = []
GCount = []
TCount = []
CCount = []

step = 1000000
start = 0
end = step

with open(file, 'r') as chromosome:
    data = chromosome.read()

while end < len(data):
  aCount.append(data.count('a', start, end))
  gCount.append(data.count('g', start, end))
  tCount.append(data.count('t', start, end))
  cCount.append(data.count('c', start, end))
  ACount.append(data.count('A', start, end))
  GCount.append(data.count('G', start, end))
  TCount.append(data.count('T', start, end))
  CCount.append(data.count('C', start, end))

  start = end
  end += step

最后,您将获得8个列表。每个列表都将包含每百万特定字符出现次数。