python 隨機抽取Fastq檔案

2021-07-25 18:31:15 字數 1115 閱讀 5952

參考

最近要做乙個二代測序的模擬,所以網上找了個小指令碼,做了些注釋,希望能夠幫助大家。

from __future__ import division

import random

number_to_sample = 3000000

number_of_replicates = 10

#計算行數

with

open("test.fastq") as input:

num_lines = sum([1

forline

in input])

# 全部reads數目

total_records = int(num_lines / 4)

print("sampling " + str(number_to_sample) + " out of " + str(total_records) + " records")

# 可以設定多個輸出檔案

output_files =

output_sequence_sets =

#開啟10個檔案

for i in range(number_of_replicates):

# 一次讀取4行

record_number = 0

with

open("test.fastq") as input:

for line1 in input:

line2 = input.next()

line3 = input.next()

line4 = input.next()

for i, output in enumerate(output_files):

if record_number in output_sequence_sets[i]:

output.write(line1)

output.write(line2)

output.write(line3)

output.write(line4)

record_number += 1

for output in output_files:

output.close()

隨機抽取一定比例的fastq檔案

在ngs的下機資料中,我們通常抽取一定比例的fq檔案做分析。在此,筆者提供兩種方式來抽取fq資料。第一種方法速度較快,但存在一定的隨機誤差。執行方式 perl 0 fq檔案抽取比例 usr bin perl w use strict die usage perl 0 n unless argv 2 ...

Python實現Excel隨機抽取數

有這樣一組資料 現在要隨機抽取十個數字,如下 import sys import xlrd import random print pm2.5 天津 開啟excel workbook xlrd.open workbook 2.xls 進入sheet excel sheet workbook.shee...

sql隨機抽取記錄

我們經常想在乙個資料表中隨機地選取出資料來,比如隨機生成考試試卷等。利用 sql server 的 newid 方法就可以很輕鬆地達到這個目的。newid 方法返回乙個 guid,如 ee95a489 b721 4e8a 8171 3ca8cb6ad9e4 在 select 表的時候,再增加一列為 ...