Sponsored Content
Top Forums Shell Programming and Scripting Filter records based on 2nd file Post 302875155 by Yoda on Monday 18th of November 2013 03:52:11 PM
Old 11-18-2013
Here is an awk based approach that might work:
Code:
awk '
        NR == FNR {
                A[$1] = A[$1] ? A[$1] "," $2 "," $3 : $2 "," $3
                next
        }
        A[$2] {
                n = split ( A[$2], R, "," )
                for ( i = 1; i <= n; i += 2 )
                {
                        if ( $3 >= R[i] && $3 <= R[i+1] )
                        {
                                if ( ! ( R[$0] ) )
                                {
                                        print $0
                                        R[$0] = $0
                                }
                        }
                }
        }
' OFS='\t' rangefile file

This User Gave Thanks to Yoda For This Post:
 

10 More Discussions You Might Find Interesting

1. Shell Programming and Scripting

filter out all the records which are having space in the 8th filed of my file

I have a file which is having fileds separtaed by delimiter. Ex: C;4498;qwa;cghy;;;;40;;222122 C;4498;sample;city;;;;34 2;;222123 C;4498;qwe;xcbv;;;;34-2;;222124 C;4498;jj;sffz;;;;41;;222120 C;4498;eert;qwq;;;;34 A;;222125 C;4498;jj;szxzzd;;;;34;;222127 out of these records I... (3 Replies)
Discussion started by: indusri
3 Replies

2. Shell Programming and Scripting

Filter records in a file using AWK

I want to filter records in one of my file using AWK command (or anyother command). I am using the below code awk -F@ '$1=="0003"&&"$2==20100402" print {$0}' $INPUT > $OUTPUT I want to pass the 0003 and 20100402 values through a variable. How can I do this? Any help is much... (1 Reply)
Discussion started by: gpaulose
1 Replies

3. Shell Programming and Scripting

Apply condition on fixed width file and filter records

Dear members.. I have a fixed width file. Requirement is as below:- 1. Scan each record from this fixed width file 2. Check for value under field no "6" equals to "ABC". If yes, then filter this record into the output file Please suggest a unix command to achieve this, my guess awk might... (6 Replies)
Discussion started by: sureshg_sampat
6 Replies

4. UNIX for Dummies Questions & Answers

Filter records in a huge text file from a filter text file

Hi Folks, I have a text file with lots of rows with duplicates in the first column, i want to filter out records based on filter columns in a different filter text file. bash scripting is what i need. Data.txt Name OrderID Quantity Sam 123 300 Jay 342 498 Kev 78 2500 Sam 420 50 Vic 10... (3 Replies)
Discussion started by: tech_frk
3 Replies

5. Shell Programming and Scripting

Shell script to filter records in a zip file that contains matching columns from another file

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

6. Shell Programming and Scripting

Filter tab file based on column value

Hello I have a tab text file with many columns and have to filter rows ONLY if column 22 has the value of '0', '1', '2' or '3' (out of 0-5). If Column 22 has value '0','1', '2' or '3' (highlighted below), then remove anything less than 10 and greater 100 (based on column 5) AND remove anything... (1 Reply)
Discussion started by: nans
1 Replies

7. Shell Programming and Scripting

Awk/sed/cut to filter out records from a file based on criteria

I have two files and would need to filter out records based on certain criteria, these column are of variable lengths, but the lengths are uniform throughout all the records of the file. I have shown a sample of three records below. Line 1-9 is the item number "0227546_1" in the case of the first... (15 Replies)
Discussion started by: MIA651
15 Replies

8. Shell Programming and Scripting

Filter duplicate records from csv file with condition on one column

I have csv file with 30, 40 columns Pasting just three column for problem description I want to filter record if column 1 matches CN or DN then, check for values in column 2 if column contain 1235, 1235 then in column 3 values must be sequence of 2345, 2345 and if column 2 contains 6789, 6789... (5 Replies)
Discussion started by: as7951
5 Replies

9. Shell Programming and Scripting

CSV File:Filter duplicate records from column1 & another column having unique record

Hi Experts, I have csv file with 30, 40 columns Pasting just 2 column for problem description. Need to print error if below combination is not present in file check for column-1 (DocumentNumber) and filter columns where value in DocumentNumber field is same. For all such rows, the field... (7 Replies)
Discussion started by: as7951
7 Replies

10. UNIX for Beginners Questions & Answers

Filter records from a log file based on timestamp

Dear Experts, I have a log file that contains a timestamp, I would like to filter record from that file based on timestamp. For example refer below file - cat sample.txt Jan 19 20:51:48 mukul-Vostro-14-3468 systemd: pam_unix(systemd-user:session): session opened for user root by (uid=0)... (6 Replies)
Discussion started by: mukulverma2408
6 Replies
Algorithm::Munkres(3pm) 				User Contributed Perl Documentation				   Algorithm::Munkres(3pm)

NAME
Algorithm::Munkres - Perl extension for Munkres' solution to classical Assignment problem for square and rectangular matrices This module extends the solution of Assignment problem for square matrices to rectangular matrices by padding zeros. Thus a rectangular matrix is converted to square matrix by padding necessary zeros. SYNOPSIS
use Algorithm::Munkres; @mat = ( [2, 4, 7, 9], [3, 9, 5, 1], [8, 2, 9, 7], ); assign(@mat,@out_mat); Then the @out_mat array will have the output as: (0,3,1,2), where 0th element indicates that 0th row is assigned 0th column i.e value=2 1st element indicates that 1st row is assigned 3rd column i.e.value=1 2nd element indicates that 2nd row is assigned 1st column.i.e.value=2 3rd element indicates that 3rd row is assigned 2nd column.i.e.value=0 DESCRIPTION
Assignment Problem: Given N jobs, N workers and the time taken by each worker to complete a job then how should the assignment of a Worker to a Job be done, so as to minimize the time taken. Thus if we have 3 jobs p,q,r and 3 workers x,y,z such that: x y z p 2 4 7 q 3 9 5 r 8 2 9 where the cell values of the above matrix give the time required for the worker(given by column name) to complete the job(given by the row name) then possible solutions are: Total 1. 2, 9, 9 20 2. 2, 2, 5 9 3. 3, 4, 9 16 4. 3, 2, 7 12 5. 8, 9, 7 24 6. 8, 4, 5 17 Thus(2) is the optimal solution for the above problem. This kind of brute-force approach of solving Assignment problem quickly becomes slow and bulky as N grows, because the number of possible solution are N! and thus the task is to evaluate each and then find the optimal solution.(If N=10, number of possible solutions: 3628800 !) Munkres' gives us a solution to this problem, which is implemented in this module. This module also solves Assignment problem for rectangular matrices (M x N) by converting them to square matrices by padding zeros. ex: If input matrix is: [2, 4, 7, 9], [3, 9, 5, 1], [8, 2, 9, 7] i.e 3 x 4 then we will convert it to 4 x 4 and the modified input matrix will be: [2, 4, 7, 9], [3, 9, 5, 1], [8, 2, 9, 7], [0, 0, 0, 0] EXPORT
"assign" function by default. INPUT
The input matrix should be in a two dimensional array(array of array) and the 'assign' subroutine expects a reference to this array and not the complete array. eg:assign(@inp_mat, @out_mat); The second argument to the assign subroutine is the reference to the output array. OUTPUT
The assign subroutine expects references to two arrays as its input paramenters. The second parameter is the reference to the output array. This array is populated by assign subroutine. This array is single dimensional Nx1 matrix. For above example the output array returned will be: (0, 2, 1) where 0th element indicates that 0th row is assigned 0th column i.e value=2 1st element indicates that 1st row is assigned 2nd column i.e.value=5 2nd element indicates that 2nd row is assigned 1st column.i.e.value=2 SEE ALSO
1. http://216.249.163.93/bob.pilgrim/445/munkres.html 2. Munkres, J. Algorithms for the assignment and transportation Problems. J. Siam 5 (Mar. 1957), 32-38 3. FranA~Xois Bourgeois and Jean-Claude Lassalle. 1971. An extension of the Munkres algorithm for the assignment problem to rectangular matrices. Communication ACM, 14(12):802-804 AUTHOR
Anagha Kulkarni, University of Minnesota Duluth kulka020 <at> d.umn.edu Ted Pedersen, University of Minnesota Duluth tpederse <at> d.umn.edu COPYRIGHT AND LICENSE
Copyright (C) 2007-2008, Ted Pedersen and Anagha Kulkarni This program is free software; you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation; either version 2 of the License, or (at your option) any later version. This program is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details. You should have received a copy of the GNU General Public License along with this program; if not, write to the Free Software Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. perl v5.10.0 2008-10-22 Algorithm::Munkres(3pm)
All times are GMT -4. The time now is 03:17 PM.
Unix & Linux Forums Content Copyright 1993-2022. All Rights Reserved.
Privacy Policy