小编fus*_*ope的帖子

根据二进制数创建单词列表

我有一个如下所示的矩阵:

输入

A   B   C   D   E   F   G   H   I 
0   0   0   0   1   0   0   0   1
0   0   0   1   0   0   0   0   0  
0   0   0   1   0   0   0   0   0  
1   0   0   0   0   0   0   0   0  
1   0   1   0   0   0   1   0   0  
1   0   0   1   0   0   0   1   0  
1   0   0   0   1   1   1   0   0  
Run Code Online (Sandbox Code Playgroud)

我想为每一行提取与值 1 对应的字母列表。

输出: …

awk text-processing

12
推荐指数
3
解决办法
678
查看次数

提取公共标识符的开始和结束位置

我有一个看起来像这样的文件:

Id       Chr     Start   End  
Prom_1   chr1    3978952 3978953  
Prom_1   chr1    3979165 3979166  
Prom_1   chr1    3979192 3979193  
Prom_2   chr1    4379047 4379048  
Prom_2   chr1    4379091 4379092  
Prom_2   chr1    4379345 4379346  
Prom_2   chr1    4379621 4379622  
Prom_3   chr1    5184469 5184470  
Prom_3   chr1    5184495 5184496  
Run Code Online (Sandbox Code Playgroud)

我想提取的是这样的开始和结束Id

Id       Chr     Start   End  
Prom_1   chr1    3978952 3979193  
Prom_2   chr1    4379047 4379622  
Prom_3   chr1    5184469 5184496
Run Code Online (Sandbox Code Playgroud)

正如您所注意到的Id,开始和结束之间的重复次数并不是恒定的。任何想法将不胜感激。

sed awk text-processing bioinformatics

6
推荐指数
1
解决办法
226
查看次数

如何根据第二列的编号从第一列中选​​择第 n 个字符

在我的工作流程中,我创建了这个文件:

AAGGAGGGAGCTGCATGGAACCTGTGGATATATACACACAAGGTTAACCTCTGTCCTGTAAA  8  
GGAGTTCAGATGTGTGCTCTTCCGATCTGGAGGTCTCTGCTGGGGCCACCCTGTCCTCTCAG  30     
GAGAGAGGAAAGGAAGCGATTGCAGAACTTTCCACAAGGCTTTAGATTCCCCTGTCACAGAG  15  
GGAGGAGAAAGAATCAACTTTATAGCATCAGCCCCTTGTTTATTTTAAGTTCAGGGTTTAAG  13  
GGGAGAACATTTCCCTCCTTGTCCTCTCCTATCTCACTTACTACATTCCCACTGGTCACTGT  7  
GGGACATTTGTGATTACATGGTTGCAGTATTCTTTTTGTTCTTAGTCAGACTGTATAATTGG  4  
Run Code Online (Sandbox Code Playgroud)

我想从第一列的每个文本中选择第二列数量中存在的第一个字母数。如第一行的前 8 个字符,第二行的前 30 个字符等。

像第一个例子一样,输出将是这样的:

AAGGAGGG  
GGAGTTCAGATGTGTGCTCTTCCGATCTGG
Run Code Online (Sandbox Code Playgroud)

任何想法将不胜感激。

text-processing

5
推荐指数
1
解决办法
739
查看次数

从向量创建元素组合以作为程序的输入

我有一个单词列表。例如:

a=(ENCFF002CDP ENCFF002COQ ENCFF002DAJ ENCFF002DCM)  
Run Code Online (Sandbox Code Playgroud)

我想运行它们的所有可能组合并使用一个工具,例如:

bedtools intersect -a ENCFF002CDP -b ENCFF002COQ > ENCFF002CDP.ENCFF002COQ.intersected  
bedtools intersect -a ENCFF002CDP -b ENCFF002DAJ > ENCFF002CDP.ENCFF002DAJ.intersected  
Run Code Online (Sandbox Code Playgroud)

等所有可能的组合。

我怎样才能做到这一点?

bash shell-script

2
推荐指数
1
解决办法
564
查看次数

在循环中连接成对的文件

我有两个以两个不同扩展名结尾的文件列表,我想将它们成对地串联起来。文件名如下所示:

这些是文件

a.ID, b.ID, c.ID, d.ID     
a.value, b.value, c.value, d.value  
Run Code Online (Sandbox Code Playgroud)

直觉上我会这样做:

for i in *.ID;  
do  
     for j in *.value;  
do  
     cat $i $j > $i.txt ; done  
done  
Run Code Online (Sandbox Code Playgroud)

问题是,我想合并a.ID使用a.value,并b.IDb.value并以这种方式,他们被随机合并。就像a.valueb.ID等。

任何的想法?提前致谢

样本输入a.ID(例如):

chr1_237301_237601  176 1  
chr1_237601_237901  176 1  
chr1_237901_238201  176 1 
Run Code Online (Sandbox Code Playgroud)

a.value(例如)结尾的示例:

chr1_1_301      0   0  
chr1_301_601    0   0  
chr1_601_901    0   0  
chr1_901_1201   0   0  
chr1_1201_1501  0   0  
Run Code Online (Sandbox Code Playgroud)

输出:

chr1_237301_237601  176 1    
chr1_237601_237901  176 1 …
Run Code Online (Sandbox Code Playgroud)

shell-script text-processing merge

1
推荐指数
1
解决办法
5520
查看次数

标签 统计

text-processing ×4

awk ×2

shell-script ×2

bash ×1

bioinformatics ×1

merge ×1

sed ×1