首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

算法(三)列举所有k-mer组合

关键词:k-mer; recursive; trick; 什么是k-mer? 比如,“ATGC”的所有1-mer是:’A’, ‘T’, ‘G’, ‘C’。共4^1=4种组合。...而“ATGC”的所有2-mer是 “AA”, “AT”, “AG”, “AC” “TA”, “TT”, “TG”,“TC” “GA”, “GT”, “GG”,“GC” “CA”, “CT”, “CG”,...那么如何打印出所有的k-mer组合呢?如果是2-mer,我们可以用两个for循环来列出所有组合,如果是3-mer,可以用三个for循环。但是如果是10-mer呢?岂不是要10个for循环?...从而会生成不同的k-mer。 细细研读这段代码后,可以发现这种方法只适用于字符串长度为2的指数的情况。...最后 我们再给出列举“ABCDEFGH”的所有k-mer组合的代码: ? 如果任何问题欢迎交流!

76320
  • 您找到你想要的搜索结果了吗?
    是的
    没有找到

    k-mer分析:你的基因组有没有被污染?

    其中Kmergenie常用于预测de novo组装中最优组装k-mer大小,根据reads分割k-mers并绘制k-mer深度分布曲线。...现在所有的测序reads均产生测序k-mers,由于测序深度较高,k-mers出现的频次也即k-mer深度较大,在去除错误率影响的前提下,可以认为其中完全不同的k-mer数目即是genomic k-mer...数目,使完全不同的k-mer的数目最大的k值就是最佳k-mer大小。...hash的二进制文件结果给出,需要统计出k-mer总数(Total),特异的k-mer数目(Distinct),只出现过一次的k-mer数(Unique),频数最高的k-mer数目(Max_count)...等信息,以stats命令来运行,如下所示: jellyfish stats -o mer_counts_stats.txt mer_counts.jf 对k-mer的计数结果有个直观的认识,则需要统计出现了

    3K40

    关于k-mer与基因组(组装)的那些事

    在这个过程中,我们经常会遇到k-mer这个名词,然而这个抽象的名词是什么意思呢?它又有什么用呢?接下来,就随着小编一起去探究这k-mer背后的含义吧! k-mer是什么?...通过将reads切割成以k为单位的k-mer,由于测序错误具有随机性,这些由于测序错误生成的k-mer绝大多数都是原测序物种中不存在的k-mer,因此都只出现了1次,要是将这些k-mer去掉,那么就会较大的可能除去测序错误...我们用k-mer做什么? 在了解了k-mer是什么以及通过去掉低频率的k-mer能够使得组装结果更加准确以后,k-mer就没有别的用途了吗?当然不是!...下图是在k-mer=15、17、19时分别作的k-mer深度分布曲线。...说了那么多使用k-mer分析的优点,好像忘了一个重要的点:k-mer怎么好像只有奇数呢? 是的,k-mer只能是奇数,就是为了防止通过k-mer组装时,正反链混淆。

    10.3K85

    R软件基于k-mer 的DNA分子序列比较研究及其应用

    基于k-mer的DNA分子序列比较研究是序列比较的一种,该方法以进化论作为依据,从序列的相似性出发探究同源的可能性。...关于相似度的计算,首先将生物序列转化为k-mer的词频向量,然后利用距离公式求得生物序列的距离矩阵作为相似度的量化。...(2)k-mer的读取。利用R编程软件,给定不同的k值计算基因序列的k-mer出现的频率,将每个物种不同k-mer出现的频率写成4k维频率向量,再将多个物种向量合并成矩阵形式。(3)计算熵权。...熵权代表了指标的重要性,根据熵权法的定义,在获得归一化的评价指标的判断矩阵后,根据熵权计算公式用判断矩阵计算出全部4k个k-mer的熵权。(4)量化相似度。...故结果表明基于k-mer思想,利用熵权来研究DNA序列非比对方法精确度更好,是有效的。

    26400

    miRNA 靶向预测软件targetscan

    01 Targetscan靶向预测思想 TargetScan 基于序列互补原则,找到比对到靶 3'UTR 的保守性 8 mer、7 mer 或 6 mer 位点(seed match 序列),进一步根据热力学稳定性筛选得到...seed 序列配对主要考虑三种类型:7 mer-1a(miRNA 的第 2-7nt 与靶基因互补配对, 而且 UTR 上与 miRNA 1nt 互补配对的位置是 A);7 mer-m8 (miRNA 2...-8nt 与靶基因完全配对);8 mer (miRNA 2-8nt 与靶基因完 全配对,而且 UTR 上与miRNA 1nt 互补配对的位置是 A)。...主要包括如下几部分: Site Type 8 mer > 7 mer-m8 > 7 mer-1a; 3' pairing contribution:除了与 miRNA seed 区域配对,与 miRNA12...其中标题各列的含义如下: Gene ID:基于 ID Species ID:物种 ID Mirbase ID:miRbase 中 miRNA 的 ID Site Type:配对类型(8mer、7 mer-m8

    6.1K20

    从Ndom语浅谈语言中的进制

    剩下的mer、nif、tondor估计就是基数的倍数了,通过观察nif abo tondor abo mer abo thonith,发现nif>tondor>mer。...按照推论,mer abo ithin应该是第三小的数字——9,那么mer应该就是基数了。ithin肯定不是1、4,所以排除5、8进制可能。那么就只剩下6、7进制两种可能了。...分析得mer an thef abo thonith是第4小的,即16。mer*thef+4=16⇒mer*thef=12。所以只有一种可能:Ndom语言的数字是6进制。...所以mer为6,thef为2,nif是mer的平方即36,ithin是9-6=3。排除法得,meregh是5。...最后还有一个tondor,通过推断tondor abo mer abo sas≥6*2+6+1=19最近的平方数是25,可以判断tondor是18。至此,我们已经推断完成所有的词。

    11.1K20

    测序数据组装的常用工具

    K-mer设置过大可能造成拼接结果较少,这是因为每个reads产生的k-mer数会随着k-mer size增大而减少,尤其是质控后的reads末端低质量碱基被切除,长度减小。...可以查看不同k-mer size下的组装结果,如果随着k-mer增大组装结果减少过多可以调整最大k-mer的数值,以确保获取更多的组装结果(尤其是对于宏基因组组装来说)。...SOAPdenovo安装后得到2个可执行文件,即最大kmer为63的SOAPdenovo-63mer和最大kmer为127的SOAPdenovo-127mer。...-127mer scaff -g graph_prefix -F 1>scaff.log 2>scaff.err #可以一步完成所有过程,如下所示: SOAPdenovo-127mer all -s config_file...他从小的k-mer开始到大的的k-mer进行迭代计算,设定阈值,短的和低深度的contigs被删掉,这样来完成低深度和高深度的拼接。

    2.7K20
    领券