Было бы хорошо, если бы вы показали нам, что вы пробовали, а также я не уверен, как вы получили 5 последовательностей, связанных с кластером 2 (в вашем выводе только 4 последовательности, но я заметил, что № 1 отсутствуетиз списка, так может это ошибка копирования / вставки?).Но один из способов сделать это в Perl, поскольку вы включили этот тег, - читать файл построчно, а если вы видите строку «Cluster», сделать ее хеш-ключом, иначе (для последующих строк), выполнить итерациюсчет как этот:
#!/usr/bin/env perl
use strict;
use warnings;
use autodie;
my %results;
my $cluster;
while (<DATA>) {
if ($_ =~ /Cluster/) {
chomp($cluster = $_);
$results{$cluster} = 0;
} else {
$results{$cluster}++;
}
}
print "$_\t$results{$_}\n" for (sort { $a cmp $b } keys %results);
__DATA__
Cluster 1
0 33aa, >abu-miR-101a:1-8... *
Cluster 2
0 33aa, >abu-miR-103:1-8... * 1 33aa, >NODE_603086_length_... at 100.00%
2 33aa, >NODE_603086_length_... at 100.00%
3 33aa, >NODE_603086_length_... at 100.00%
4 33aa, >NODE_603086_length_... at 100.00%
Cluster 3
0 33aa, >abu-miR-10543:1-8... *
1 33aa, >abu-miR-10543:1-8... at 100.00%
Cluster 4
0 33aa, >abu-miR-10544:1-8... *
Cluster 5
0 33aa, >abu-miR-10545-5p:1-... *
Я сделал много предположений здесь (например, новые кластеры всегда будут начинаться со строки, содержащей строку «Cluster #», за которой следуют последующие строки, содержащие последовательности, связанные скаждый "кластер").Это всего лишь простой пример быстрого способа обдумать это, и вам, вероятно, придется настроить его, чтобы удовлетворить ваши конечные потребности.