有的时候我们需要将一个测序的下机数据随机分割成多个同等大小的文件,那么当遇到这种情况的时候,我们可以利用Python来实现这个目的。
基本思路:fastq文件中每四行为一个单位,及每条read所对应的信息。那么,在分割时,要注意将每条read的信息打包在一起操作。首先要读取源文件的每一行,将其存放在列表当中。然后我们按照我们想要分割的文件数来对这个列表进行随机抽取。在进行随机抽取时,我们可以不必直接用random函数随机抽取某一数值,而可以先将列表中的顺序打乱,然后按顺序提取就可以。这样操作的好处是可以极大的降低循环次数,大幅缩短时间。
代码如下所示: