02-15-2012
Hi guys,
Somehow I managed to request one of my other friends for a perl script. He was able to write one that could do my task. But, it was only for 2 files.
I would like to request any of you to edit the following code so that it lets me do the task for multiple number of files and multiple cut-offs.
To be clear, I would like to specify at STDIN or while running the code the number of files and the different cutoff.
Thanks to all of you in advance.
Quote:
#!/usr/bin/perl
$file1="1.txt";
$file2="2.txt";
open(FILE, "$file1") || die "can't: $!";
open(OUTPUT, ">op.txt") || die "can't: $!";
%hash='';
$i=1;
while(<FILE>)
{
$line=$_;
chomp($line);
@a=split(/\s+/,"$line");
open(FILE1,"$file2") || die "can't: $!";
while(<FILE1>)
{
$line1=$_;
chomp($line1);
@b=split(/\s+/,"$line1");
if($a[0] eq $b[0])
{
if($a[1] == $b[1])
{
if($a[2] == $b[2])
{
@x=split(/\./,"$file1");
@y=split(/\./,"$file2");
if(!exists $hash{$line})
{
$hash{$line}=1;
print OUTPUT "$a[0]\t$a[1]\t$a[2]\t$x[0]$y[0].txt\n";
}
}
}
}
if($a[0] eq $b[0])
{
if($a[1] < $b[2])
{
if($a[2] > $b[1])
{
if(!exists $hash{$line})
{
$hash{$line}=1;
print OUTPUT "$a[0]\t$a[1]\t$a[2]\t$file1\n";
}
if(!exists $hash{$line1})
{
$hash{$line1}=1;
print OUTPUT "$b[0]\t$b[1]\t$b[2]\t$file2\n";
}
}
}
}
if($a[0] eq $b[0])
{
if(abs($a[1] - $b[2]) <= 300 || abs($a[2] - $b[1]) <=300)
{
if(!exists $hash{$line})
{
$hash{$line}=1;
print OUTPUT "$a[0]\t$a[1]\t$a[2]\t$file1\n";
}
if(!exists $hash{$line1})
{
$hash{$line1}=1;
print OUTPUT "$b[0]\t$b[1]\t$b[2]\t$file2\n";
}
}
}
}
}
---------- Post updated 02-15-12 at 10:36 AM ---------- Previous update was 02-14-12 at 11:28 AM ----------
Please help me. It is a very important task
10 More Discussions You Might Find Interesting
1. Shell Programming and Scripting
Hi,
To be honest, I am really impressed and amazed at the pace I find solutions for un-solved coding mysteries in this forum.
I have a file like this
input1.txt
x y z 1 2 3
a b c 4 -3 7
k l m n 0 p
1 2 a b c 4
input2
x y z 9 0 -1
a b c 0 6 9
k l m 8 o p
1 2 a f x 9
Output... (9 Replies)
Discussion started by: jacobs.smith
9 Replies
2. Shell Programming and Scripting
Dear List,
I have a file of csv data which has a different line per compliance check per host. I do not want any omissions from this csv data file which looks like this:
date,hostname,status,color,check
02-03-2012,COMP1,FAIL,Yellow,auth_pass_change... (3 Replies)
Discussion started by: landossa
3 Replies
3. Shell Programming and Scripting
Hi, I have the following files,
A M 2 3
B E 4 5
C I 5 6
D O 4 5
A M 3 4
B E 5 2
F U 7 9
J K 2 3
OUTPUT
A M 2 3 3 4
B E 4 5 5 2
thanks in advance, (7 Replies)
Discussion started by: jacobs.smith
7 Replies
4. UNIX for Dummies Questions & Answers
input:
ref.1;rack.1;1 #group1
ref.1;rack.1;2 #group1
ref.1;rack.2;1 #group2
ref.2;rack.3;1 #group3
ref.2;rack.3;2 #group3
ref.2;rack.3;3 #group3
Among records from same group (i.e. with same 1st and 2nd field - separated by ";"), I would need to keep the last record... (5 Replies)
Discussion started by: beca123456
5 Replies
5. Shell Programming and Scripting
Hi Friends,
I have an input file like this
cat input1
x 1
y 2
z 3
a 2
b 4
c 6
d 9
cat input2
x 7
h 8
k 9
l 5
m 9
d 12 (5 Replies)
Discussion started by: jacobs.smith
5 Replies
6. Shell Programming and Scripting
Good morning all,
I have a problem that is one step beyond a standard awk compare.
I would like to compare three files which have several thousand records against a fourth file. All of them have a value in each row that is identical, and one value in each of those rows which may be duplicated... (1 Reply)
Discussion started by: nashton
1 Replies
7. Shell Programming and Scripting
Hello,
Suppose I have these 2 tab delimited files, where the second column in first file contains matching values from first column of the second file, I would like to get an output like this:
File A
1 A
2 B
3 C
File B
A Apple
C Cinnabon
B Banana
I would like... (1 Reply)
Discussion started by: Mohamed EL Hadi
1 Replies
8. Shell Programming and Scripting
Not sure if this is the correct forum for this question. I have two files. file1.zip, file2
Input:
file1.zip
col1, col2 , col3
a , b , 0:0:0:0:0:c436:9346:d40b
x, y, 0:0:0:0:0:880:39f9:c9a7
m, n , 0:0:0:0:0:80c7:9161:fe00
file2.txt
col1
c4:36:93:46:d4:0b... (1 Reply)
Discussion started by: anil.v
1 Replies
9. UNIX for Beginners Questions & Answers
Hello, I need to find the intersection across 10 columns. Kindly help.
my file (INPUT.csv) looks like this
4_R 4_S 8_R 8_S 12_R 12_S 24_R 24_S
LOC_Os01g01010 LOC_Os01g01010 LOC_Os01g01010 LOC_Os04g48290 LOC_Os01g01010 LOC_Os01g01010... (1 Reply)
Discussion started by: Sanchari
1 Replies
10. UNIX for Beginners Questions & Answers
I have two files:
File_1:
@M04961:22:000000000-B5VGJ:1:1101:9280:7106 1:N:0:86
GGCATGAAAACATACAAACCGTCTTTCCAGAAATTGTTCCAAGTATCGGCAACAGCTTTATCAATACCATGAAAAATATCAACCACACCAGAAGCAGCAT
+
GGGGGGGGGGGGGGGGGCCGGGGGF,EDFFGEDFG,@DGGCGGEGGG7DCGGGF68CGFFFGGGG@CGDGFFDFEFEFF:30CGAFFDFEFF8CAF;;8F
... (3 Replies)
Discussion started by: Xterra
3 Replies
LEARN ABOUT DEBIAN
h5diff
h5diff(1) General Commands Manual h5diff(1)
NAME
h5diff - Compares two HDF5 files and reports the differences.
SYNOPSIS
h5diff file1 file2 [OPTIONS] [object1 [object2 ] ]
DESCRIPTION
h5diff is a command line tool that compares two HDF5 files, file1 and file2, and reports the differences between them.
Optionally, h5diff will compare two objects within these files. If only one object, object1, is specified, h5diff will compare object1 in
file1 with object1 in file2. In two objects, object1 and object2, are specified, h5diff will compare object1 in file1 with object2 in
file2. These objects must be HDF5 datasets.
object1 and object2 must be expressed as absolute paths from the respective file's root group.
Additional information, with several sample cases, can be found in the document H5diff Examples.
OPTIONS
file1 file2
The HDF5 files to be compared.
-h Print all differences.
-r Print only the names of objects that differ; do not print the differences. These objects may be HDF5 datasets, groups, or named
datatypes.
-n count
Print difference up to count differences, then stop. count must be a positive integer.
-d delta
Print only differences that are greater than the limit delta. delta must be a positive number. The comparison criterion is whether
the absolute value of the difference of two corresponding values is greater than delta (e.g., |a-b| > delta, where a is a value in
file1 and b is a value in file2).
-p relative
Print only differences that are greater than a relative error. relative must be a positive number. The comparison criterion is
whether the absolute value of the difference 1 and the ratio of two corresponding values is greater than relative (e.g., |1-(b/a)| >
relative where a is a value in file1 and b is a value in file2).
object1 object2
Specific object(s) within the files to be compared.
EXAMPLES
The following h5diff call compares the object /a/b in file1 with the object /a/c in file2:
h5diff file1 file2 /a/b /a/c
This h5diff call compares the object /a/b in file1 with the same object in file2:
h5diff file1 file2 /a/b
And this h5diff call compares all objects in both files:
h5diff file1 file2
SEE ALSO
h5dump(1), h5ls(1), h5repart(1), h5import(1), gif2h5(1), h52gif(1), h5perf(1)
h5diff(1)