from arrayheap import ArrayHeap
def generateTable(self, node, table):
def codeTable(node, codeString):
if node.isLeaf:
table[node._char] = codeString
return
if node.getleft() is not None:
table(node.getLeft(), codeSt
我终于找到了一个代码,可能在计算香农熵,但由于我根本不完全理解C#,谁能帮我完全掌握它吗?我的意思是纯粹理解代码,而不是它在做什么。如果你问的话,我很理解德尔菲。
public static double ShannonEntropy(string s)
{
var map = new Dictionary<char, int>();
foreach (char c in s)
{
if (!map.ContainsKey(c))
map.Add(c, 1);
else
map[
我看过类似的话题,但我找不到与我试图实现的目标完全相提并论的解决方案。
我有一个密文,需要根据每个字母在文本中出现的频率进行简单的字母替换。我已经有了一个标准化文本的函数(小写,没有非字母字符,没有,统计字母出现的次数,然后获得每个字母的相对频率。字母是字典中的关键字,频率是值。
我在一个单独的字典(k=letter,v=frequency)中也有A-Z的预期字母频率,但我有点困惑于下一步该怎么做。
我认为我需要做的是获得规范化的密文,预期的字母freq dict d1和密码字母freq dict d2,并按如下方式迭代它们(部分伪代码):
for word in text:
for
我有一个包含3个染色体字符串的文件,我想把它连接到一个基因组中。然后,我必须跨多个线程访问这个连接字符串(我使用pthread_t)。为此,我必须在提取数据时使用pthread_mutex_lock,然后使用strcat连接使用const *函数fai_fetch提取的数据,然后将数据保存为char* (参见下文)。
// genome_size the size of all the chromosomes together
// chr_total the number of chromosomes I wish to concatenate
char* genome = (char*)
这是我的大数据的一个子集:
gene feature reads
A anot 2
A 3ss_A 3
A 3ss_B 5
B 5ss_A 1
B anot 4
C 3ss_A 2
C 3ss_B 8
C anot 3
C 5ss_A 6
我想将每个基因中对应于3ss和5ss特征的读数划分为该基因的"anot“特征。我对每个基因都有多个特征(这里没有显示),但每个基因只有一个"anot“特征。
预期输出为:
gene
我正在尝试从由csv文件生成的字典中随机提取一组键值对。字典包含有关基因的信息,基因名称是字典的关键字,以及一个数字列表(与基因表达等相关)。就是价值。
# python 2.7.5
import csv
import random
genes_csv = csv.reader(open('genes.csv', 'rb'))
genes_dict = {}
for row in genes_csv:
genes_dict[row[0]] = row[1:]
length = raw_input('How many genes do you
我正在编写一个程序,其中有一个名为vocabulary的计数器(collections.counter),它是一个名为wordFrequency的计数器中出现频率最高的10,000个计数器,它是通过对从文本文件中读取的单词实例进行计数得到的。我一直在尝试使用if语句来检查是否在该计数器中找到了某个元素。我所拥有的是:
vocabulary = wordFrequency.most_common(10000)
[...]
for line in trainReader2:
if len(line) == 10 and line[5] != "_":
i
我试图理解用python编写的“Rosetta代码”中的Huffman代码。下面是代码的一小部分。
def encode(symb2freq):
heap = [[wt, [sym, ""]] for sym, wt in symb2freq.items()] #What does this do?
我假设变量heap是一个列表。但是wt和sym是什么?
我有一个Rna-seq数据集(rows=samples,columns=genes),它具有聚类功能.这些基因被分类为n个簇,其中属于0簇的基因是非聚类基因。这些聚类又回到聚类中,我们又得到了n个标记数的簇,其中0又是非聚类基因。这一过程一直进行到没有进一步的基因被分类为第0组。我需要循环进入这个过程,以便在每次迭代时返回最终的聚类结果以及属于群集0的基因的合并。我知道这可以用时间或重复来完成。我试过使用重复,但没有工作,问题是,我没有真正清楚如何正确设置这一点。
#define my dataset
dat<-my_dataset
repeat{
#run the cluster
我正在开发一个模拟器,在模拟器中,Person对象(存储在ArrayList中)“复制”并生产婴儿,他们继承“基因”,表示为4个字母的字符串。在程序开始时,第一批人的基因库是随机生成的。
在计时器的每一个滴答中,我想计算出在所有的人对象中最常见的“基因”是什么。
这四封信是:
G、Z、N、F
A,T,C,G
B、F、Q、N
A、C、T、E
在这种情况下,有256种可能的组合,而且必须有比256条if-else语句更有效的检查。
Person类(减去get/set方法)
public class Person {
static Random rand = new
在Vim中是否有一种方法来对可视块中的文本进行调整?
体育课。我的文件的一个部分示例:
text text |5 sm 23 |
text text |1274 hc a4|
text text | 33 rnd bc|
text text | 28 yz 22 |
text text |9808 yz 56|
预期产出:
text text 5 sm 23
text text 1274 hc a4
text text 33 rnd bc
text text 28 yz 22
text text 9808 yz 56
我启用了虚拟编辑::set v
我有一个非常大的数据集,我想将其从基因型转换为编码格式。基因型应表示如下:
A A -> -1
A B -> 0
B B -> 1
我曾使用awk考虑过这一点,但我似乎找不到一种可行的解决方案,可以读取两列并输出单个代码来代替基因型。输入文件如下所示:
AnimalID Locus Allele1 Allele2
1 1 A B
1 2 A A
1 3 B B
2 1 B A
2 2