【问题标题】:Number of Specific Characters Per Every One Million每百万的特定字符数
【发布时间】:2014-11-12 12:55:06
【问题描述】:

首先,我使用的是 Python。

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

例如:

我想知道 a、g、t 和 c 以及 A、G、T 和 C 在导入文件中出现的次数。

我能够(到目前为止)使用“计数器”计算整个文件的这些字符的数量,但不熟悉如何将其分解为每百万?

提前致谢!

【问题讨论】:

  • 不完全确定你在问什么。但是你不能简单地将得到的数字除以 100 万吗?
  • 或者...除以总数并乘以一百万。这是作业题吗?
  • 我不能将结果数字除以一百万,因为这会给我平均数,而不是前一百万中的具体字符数。
  • 对不起,如果有点含糊,我对编程有点陌生!

标签: python split character


【解决方案1】:

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

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 个列表。每个列表将包含每百万特定字符的出现次数。

【讨论】:

    猜你喜欢
    • 2016-04-25
    • 2021-12-14
    • 2018-05-14
    • 2011-03-31
    • 1970-01-01
    • 1970-01-01
    • 2014-09-10
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多