2つのテキストファイルがあります。
1.両方のファイルの各要素をそれぞれのファイルに存在する数で割りたい。2.両方のファイルのそれぞれのインデックス位置で上記の計算によって得られた値の差の二乗
を計算したいと思います。
file1:
1000 1.45 1450 1.56 2559 335 0.35 499 0.54 1104 1433 1.49 1498 1.62 2511 684 0.71 263 0.28 1481
1111 **(各要素をこの番号で割る)
file2:
2000 1.45 1450 1.56 2559 335 0.35 499 0.54 1104 1433 1.49 1498 1.62 2511 684 0.71 263 0.28 1481
2222 **(各要素をこの番号で割る)
たとえば、最初の要素[(1000/1111)-(2000/2222)]^2などの出力が必要です...
(注:両方のファイルに同じ数の空白またはタブがあります)
#!/usr/bin/perl -w
use List::MoreUtils qw<pairwise>;
print"Enter file 1: ";
chomp($file=<STDIN>);
open(FH,$file);
print"Enter file 2: ";
chomp($hspfile=<STDIN>);
open(FH1,$hspfile);
open(OUT,">$file.$hspfile.txt");
my @list1 = split '\s+', <FH>;
my @list2 = split '\s+', <FH1>;
my @diff = pairwise { ($p - $q)^2 } @list1, @list2;
print OUT "@diff";
close FH;
close FH1;
このコードは空白では実行されません。