小编Jor*_*dan的帖子

如何查找数组的值是否是Perl中哈希的键?

我有一个数组说@array.我想知道数组的哪些值构成哈希的键,比如%hash.除了使用for循环之外,还有一种简单的方法吗?

例如,

 @array = qw (a b c);   
 %hash = ( a => 1, b=> 2 );    
Run Code Online (Sandbox Code Playgroud)

在这种情况下,它应该只输出'a'和'b'.

arrays perl hash

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

使用tr ///运算符计算字符串中的字母

我想在序列或字符串中计算A,C和G的数量.我写了以下代码.

但是当我打印这些值时,只有A打印出来.C和G显示为零.在下面的代码中,我首先评估A,但如果我通过首先评估C来切换顺序,我得到C的值,但是现在A和G被打印为零.

谁能告诉我我的代码有什么问题?谢谢!

#! /usr/bin/perl

use strict;
use warnings;

open(IN, "200BP_junctions_fasta.faa") or die "Cannot open the file: $!\n";
while(<IN>) 
    next if $_ =~ /\>/;
    my $a = ($_ = tr/A//);
    my $c = ($_ = tr/C//);
    my $g = ($_ = tr/G//);
    print "A:$a, C:$c, G:$g\n";
}
Run Code Online (Sandbox Code Playgroud)

该文件如下所示:

> A_Seq  
ATGCTAGCTAGCTAGCTAGTC  
> B_Seq  
ATGCGATCGATCGATCGATAG  
Run Code Online (Sandbox Code Playgroud)

string perl count

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

如何在Perl中为一组数组元素赋值?

我想用一行初始化一组数组元素相同的值.我知道我可以使用for循环,但我想知道是否有更简单的方法来实现它.

例如,我有一个零数组.我想将元素4到9初始化为1.我会想做类似的事情,

my @array = (0) x 10;
for my $i (3 .. 8) {
    $array[$i] = 1;
}
Run Code Online (Sandbox Code Playgroud)

arrays perl

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

对于R,我们在Python中使用'in'命令的替代方法是什么?

假设我在R中有一个数字向量.我想知道向量中是否存在特定的整数.我们可以使用'in'命令在python中轻松完成,if语句可能是.

我们在R中也有类似的东西吗?所以我不必使用for循环来检查我想要的整数是否存在于向量中?我尝试了以下,但似乎没有用.'normal'是数据帧,第二列是整数.

if (12069692 in normal[,2]) {print("yes")}
Run Code Online (Sandbox Code Playgroud)

说,

Error: unexpected 'in' in "if (12069692 in"
Run Code Online (Sandbox Code Playgroud)

if-statement r vector

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

标签 统计

perl ×3

arrays ×2

count ×1

hash ×1

if-statement ×1

r ×1

string ×1

vector ×1