我有一个数组说@array.我想知道数组的哪些值构成哈希的键,比如%hash.除了使用for循环之外,还有一种简单的方法吗?
例如,
@array = qw (a b c);
%hash = ( a => 1, b=> 2 );
Run Code Online (Sandbox Code Playgroud)
在这种情况下,它应该只输出'a'和'b'.
我想在序列或字符串中计算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)
该文件如下所示:
Run Code Online (Sandbox Code Playgroud)> A_Seq ATGCTAGCTAGCTAGCTAGTC > B_Seq ATGCGATCGATCGATCGATAG
我想用一行初始化一组数组元素相同的值.我知道我可以使用for循环,但我想知道是否有更简单的方法来实现它.
例如,我有一个零数组.我想将元素4到9初始化为1.我会想做类似的事情,
my @array = (0) x 10;
for my $i (3 .. 8) {
$array[$i] = 1;
}
Run Code Online (Sandbox Code Playgroud) 假设我在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)