Sponsored Content
Top Forums Shell Programming and Scripting Merging two files by comparing three fields Post 302323328 by durden_tyler on Saturday 6th of June 2009 04:40:11 PM
Old 06-06-2009
One way to do it with perl:

Code:
$
$ cat file1
Class1 Sports Ball 11 12 13
Class2 Academic Bat 21 22 23
Class3 Academic Pen 31 32 33
Class4 Gift Birthday 41 42 43
$
$ cat file2
Class1 Sports Ball 14 15
Class2 Academic Bat 24 25
Class3 Academic Pen 34 35
Class5 Books Maths 54 55
$
$ perl -ne 'BEGIN {open(F,"file2"); while(<F>){split; $x{$_[0].":".$_[1].":".$_[2]}=" $_[3] $_[4]"} close(F)}
>   { chomp; split; $y=$_[0].":".$_[1].":".$_[2]; print $_,defined $x{$y}?$x{$y}:" 0 0","\n" }' file1
Class1 Sports Ball 11 12 13 14 15
Class2 Academic Bat 21 22 23 24 25
Class3 Academic Pen 31 32 33 34 35
Class4 Gift Birthday 41 42 43 0 0
$
$

tyler_durden
 

10 More Discussions You Might Find Interesting

1. Shell Programming and Scripting

merging fields from 2 different files.

File 1 3337304 2 4 DH.ER@TORONTO.CA 20080504 04622 3337305 2 4 A@C.COM 20080504 04622 3337306 2 4 JO@NET.NET 20080504 04622 3337307 2 4 L@GMAIL.COM 20080504 05344 2479201 2 2 ORY@YAHOO.COM 20080504 05344 File 2 ... (5 Replies)
Discussion started by: rudoraj
5 Replies

2. Shell Programming and Scripting

Comparing two files and replacing fields

I have two files with ids and email addresses. File 2 cotains a subset of the records in file 1. The key field is the first field containing the id. file 1: 123|myadr@abc.com 456|myadr2@abc.com 789|myadr3@abc.com file 2: 456|adr456@xyz.com Where the record appears in the second... (3 Replies)
Discussion started by: tltroy
3 Replies

3. Shell Programming and Scripting

Comparing fields in two files

Hi, i want to compare two files by one field say $3 in file1 needs to compare with $2 in file2. sample file1 - reqd_charge_code 2263881188,24570896,439 2263881964,24339077,439 2263883220,22619162,228 2263884224,24631840,442 2263884246,22612161,442 sample file2 - rg_j ... (2 Replies)
Discussion started by: raghavendra.cse
2 Replies

4. Shell Programming and Scripting

Problem in comparing 2 fields from 2 files

I've 2 files. Need to compare File1.Field1,File1.Field2 with File2.Field1,File2.Field2. If matches then create a new file. File1 10 A|ADB|967143.24|1006101.5 3E HK|DHB|24294.76|242513.89 ABN ACU|ADB|22104.69|51647.14 ABN BU|DBA|39137.14|109128.38 ABN|ADB|64466.89|167936.55 ABOC... (2 Replies)
Discussion started by: buster
2 Replies

5. Programming

comparing two fields from two different files in AWK

Hi, I have two files formatted as following: File 1: (user_num_ID , realID) (the NR here is 41671) 1 cust_034_60 2 cust_80_91 3 cust_406_4 .. .. File 2: (realID , clusterNumber) (total NR here is 1000) cust_034_60 2 cust_406_4 3 .. .. (11 Replies)
Discussion started by: amarn
11 Replies

6. UNIX for Dummies Questions & Answers

Comparing and merging two text files

Hey everybody, I am new here and already a question to ask, I just recently started some bioinformatic work for my PhD so I am slowly learning Anyway, here is my problem, I have two text files, one contains the complete data file with 43000 genes and their read counts for all my samples... (1 Reply)
Discussion started by: ant55
1 Replies

7. Shell Programming and Scripting

Comparing two files using four fields

I want to compare File1 and File2 (Separated by spaces) using four fields (Column 1,2,4,5). Logic: If column 1 and 2 of File1 and File2 match exactly and if the File2 has the same characters as any of the characters present in column 4 and 5 of file1 then those lines of file1 and file2 are... (1 Reply)
Discussion started by: NamS
1 Replies

8. Shell Programming and Scripting

Comparing two files using four fields

Dear All, I want to compare File1 and File2 (Separated by spaces) using four fields (Column 1,2,4,5). Logic: If column 1 and 2 of File1 and File2 match exactly and if the File2 has the same characters as any of the characters present in column 4 and 5 of file1 then those lines of file1 and file2... (6 Replies)
Discussion started by: NamS
6 Replies

9. UNIX for Advanced & Expert Users

Need urgent help in comparing two fields in two files

Hi all, I have two files as below. I need to compare field 2 of file 1 against field 1 of file 2 and field 5 of file 1 against filed 2 of file 2. If both matches , then create a result file 1 with first file data and if not matches , then create file with first fie data. Please help me in... (1 Reply)
Discussion started by: sivarajb
1 Replies

10. Shell Programming and Scripting

Comparing two files by two matching fields

Long time listener first time poster. Hope someone can advise. I have two files, 1000+ lines in each, two fields in each file. After performing a sort, what is the best way to find exact matches where field $1 and $2 in file1 are also present in file2 on the same line, then output only those... (6 Replies)
Discussion started by: bstaff
6 Replies
DateTime::Locale::cch(3)				User Contributed Perl Documentation				  DateTime::Locale::cch(3)

NAME
DateTime::Locale::cch SYNOPSIS
use DateTime; my $dt = DateTime->now( locale => 'cch' ); print $dt->month_name(); DESCRIPTION
This is the DateTime locale package for Atsam. DATA
This locale inherits from the DateTime::Locale::root locale. It contains the following data. Days Wide (format) Wai Tunga Toki Gitung Tsam Kasuwa Wai Na Nas Wai Na Tiyon Wai Na Chirim Wai Yoka Bawai Abbreviated (format) Tung T. Tung Tsan Nas Nat Chir Yok Narrow (format) 2 3 4 5 6 7 1 Wide (stand-alone) Wai Tunga Toki Gitung Tsam Kasuwa Wai Na Nas Wai Na Tiyon Wai Na Chirim Wai Yoka Bawai Abbreviated (stand-alone) Tung T. Tung Tsan Nas Nat Chir Yok Narrow (stand-alone) 2 3 4 5 6 7 1 Months Wide (format) Pen Dyon Pen Ba'a Pen Atat Pen Anas Pen Atyon Pen Achirim Pen Atariba Pen Awurr Pen Shadon Pen Shakur Pen Kur Naba Pen Kur Natat Abbreviated (format) Dyon Baa Atat Anas Atyo Achi Atar Awur Shad Shak Naba Nata Narrow (format) 1 2 3 4 5 6 7 8 9 10 11 12 Wide (stand-alone) Pen Dyon Pen Ba'a Pen Atat Pen Anas Pen Atyon Pen Achirim Pen Atariba Pen Awurr Pen Shadon Pen Shakur Pen Kur Naba Pen Kur Natat Abbreviated (stand-alone) Dyon Baa Atat Anas Atyo Achi Atar Awur Shad Shak Naba Nata Narrow (stand-alone) 1 2 3 4 5 6 7 8 9 10 11 12 Quarters Wide (format) Q1 Q2 Q3 Q4 Abbreviated (format) Q1 Q2 Q3 Q4 Narrow (format) 1 2 3 4 Wide (stand-alone) Q1 Q2 Q3 Q4 Abbreviated (stand-alone) Q1 Q2 Q3 Q4 Narrow (stand-alone) 1 2 3 4 Eras Wide Gabanin Miladi Miladi Abbreviated GM M Narrow GM M Date Formats Full 2008-02-05T18:30:30 = Toki Gitung, 2008 Pen Ba'a 05 1995-12-22T09:05:02 = Wai Na Tiyon, 1995 Pen Kur Natat 22 -0010-09-15T04:44:23 = Wai Na Chirim, -10 Pen Shadon 15 Long 2008-02-05T18:30:30 = 2008 Pen Ba'a 5 1995-12-22T09:05:02 = 1995 Pen Kur Natat 22 -0010-09-15T04:44:23 = -10 Pen Shadon 15 Medium 2008-02-05T18:30:30 = 2008 Baa 5 1995-12-22T09:05:02 = 1995 Nata 22 -0010-09-15T04:44:23 = -10 Shad 15 Short 2008-02-05T18:30:30 = 08/02/05 1995-12-22T09:05:02 = 95/12/22 -0010-09-15T04:44:23 = -10/09/15 Default 2008-02-05T18:30:30 = 2008 Baa 5 1995-12-22T09:05:02 = 1995 Nata 22 -0010-09-15T04:44:23 = -10 Shad 15 Time Formats Full 2008-02-05T18:30:30 = 18:30:30 UTC 1995-12-22T09:05:02 = 09:05:02 UTC -0010-09-15T04:44:23 = 04:44:23 UTC Long 2008-02-05T18:30:30 = 18:30:30 UTC 1995-12-22T09:05:02 = 09:05:02 UTC -0010-09-15T04:44:23 = 04:44:23 UTC Medium 2008-02-05T18:30:30 = 18:30:30 1995-12-22T09:05:02 = 09:05:02 -0010-09-15T04:44:23 = 04:44:23 Short 2008-02-05T18:30:30 = 18:30 1995-12-22T09:05:02 = 09:05 -0010-09-15T04:44:23 = 04:44 Default 2008-02-05T18:30:30 = 18:30:30 1995-12-22T09:05:02 = 09:05:02 -0010-09-15T04:44:23 = 04:44:23 Datetime Formats Full 2008-02-05T18:30:30 = Toki Gitung, 2008 Pen Ba'a 05 18:30:30 UTC 1995-12-22T09:05:02 = Wai Na Tiyon, 1995 Pen Kur Natat 22 09:05:02 UTC -0010-09-15T04:44:23 = Wai Na Chirim, -10 Pen Shadon 15 04:44:23 UTC Long 2008-02-05T18:30:30 = 2008 Pen Ba'a 5 18:30:30 UTC 1995-12-22T09:05:02 = 1995 Pen Kur Natat 22 09:05:02 UTC -0010-09-15T04:44:23 = -10 Pen Shadon 15 04:44:23 UTC Medium 2008-02-05T18:30:30 = 2008 Baa 5 18:30:30 1995-12-22T09:05:02 = 1995 Nata 22 09:05:02 -0010-09-15T04:44:23 = -10 Shad 15 04:44:23 Short 2008-02-05T18:30:30 = 08/02/05 18:30 1995-12-22T09:05:02 = 95/12/22 09:05 -0010-09-15T04:44:23 = -10/09/15 04:44 Default 2008-02-05T18:30:30 = 2008 Baa 5 18:30:30 1995-12-22T09:05:02 = 1995 Nata 22 09:05:02 -0010-09-15T04:44:23 = -10 Shad 15 04:44:23 Available Formats d (d) 2008-02-05T18:30:30 = 5 1995-12-22T09:05:02 = 22 -0010-09-15T04:44:23 = 15 EEEd (d EEE) 2008-02-05T18:30:30 = 5 T. Tung 1995-12-22T09:05:02 = 22 Nat -0010-09-15T04:44:23 = 15 Chir Hm (H:mm) 2008-02-05T18:30:30 = 18:30 1995-12-22T09:05:02 = 9:05 -0010-09-15T04:44:23 = 4:44 hm (h:mm a) 2008-02-05T18:30:30 = 6:30 PM 1995-12-22T09:05:02 = 9:05 AM -0010-09-15T04:44:23 = 4:44 AM Hms (H:mm:ss) 2008-02-05T18:30:30 = 18:30:30 1995-12-22T09:05:02 = 9:05:02 -0010-09-15T04:44:23 = 4:44:23 hms (h:mm:ss a) 2008-02-05T18:30:30 = 6:30:30 PM 1995-12-22T09:05:02 = 9:05:02 AM -0010-09-15T04:44:23 = 4:44:23 AM M (L) 2008-02-05T18:30:30 = 2 1995-12-22T09:05:02 = 12 -0010-09-15T04:44:23 = 9 Md (M-d) 2008-02-05T18:30:30 = 2-5 1995-12-22T09:05:02 = 12-22 -0010-09-15T04:44:23 = 9-15 MEd (E, M-d) 2008-02-05T18:30:30 = T. Tung, 2-5 1995-12-22T09:05:02 = Nat, 12-22 -0010-09-15T04:44:23 = Chir, 9-15 MMM (LLL) 2008-02-05T18:30:30 = Baa 1995-12-22T09:05:02 = Nata -0010-09-15T04:44:23 = Shad MMMd (MMM d) 2008-02-05T18:30:30 = Baa 5 1995-12-22T09:05:02 = Nata 22 -0010-09-15T04:44:23 = Shad 15 MMMEd (E MMM d) 2008-02-05T18:30:30 = T. Tung Baa 5 1995-12-22T09:05:02 = Nat Nata 22 -0010-09-15T04:44:23 = Chir Shad 15 MMMMd (MMMM d) 2008-02-05T18:30:30 = Pen Ba'a 5 1995-12-22T09:05:02 = Pen Kur Natat 22 -0010-09-15T04:44:23 = Pen Shadon 15 MMMMEd (E MMMM d) 2008-02-05T18:30:30 = T. Tung Pen Ba'a 5 1995-12-22T09:05:02 = Nat Pen Kur Natat 22 -0010-09-15T04:44:23 = Chir Pen Shadon 15 ms (mm:ss) 2008-02-05T18:30:30 = 30:30 1995-12-22T09:05:02 = 05:02 -0010-09-15T04:44:23 = 44:23 y (y) 2008-02-05T18:30:30 = 2008 1995-12-22T09:05:02 = 1995 -0010-09-15T04:44:23 = -10 yM (y-M) 2008-02-05T18:30:30 = 2008-2 1995-12-22T09:05:02 = 1995-12 -0010-09-15T04:44:23 = -10-9 yMEd (EEE, y-M-d) 2008-02-05T18:30:30 = T. Tung, 2008-2-5 1995-12-22T09:05:02 = Nat, 1995-12-22 -0010-09-15T04:44:23 = Chir, -10-9-15 yMMM (y MMM) 2008-02-05T18:30:30 = 2008 Baa 1995-12-22T09:05:02 = 1995 Nata -0010-09-15T04:44:23 = -10 Shad yMMMEd (EEE, y MMM d) 2008-02-05T18:30:30 = T. Tung, 2008 Baa 5 1995-12-22T09:05:02 = Nat, 1995 Nata 22 -0010-09-15T04:44:23 = Chir, -10 Shad 15 yMMMM (y MMMM) 2008-02-05T18:30:30 = 2008 Pen Ba'a 1995-12-22T09:05:02 = 1995 Pen Kur Natat -0010-09-15T04:44:23 = -10 Pen Shadon yQ (y Q) 2008-02-05T18:30:30 = 2008 1 1995-12-22T09:05:02 = 1995 4 -0010-09-15T04:44:23 = -10 3 yQQQ (y QQQ) 2008-02-05T18:30:30 = 2008 Q1 1995-12-22T09:05:02 = 1995 Q4 -0010-09-15T04:44:23 = -10 Q3 yyQ (Q yy) 2008-02-05T18:30:30 = 1 08 1995-12-22T09:05:02 = 4 95 -0010-09-15T04:44:23 = 3 -10 Miscellaneous Prefers 24 hour time? Yes Local first day of the week Wai Tunga SUPPORT
See DateTime::Locale. AUTHOR
Dave Rolsky <autarch@urth.org> COPYRIGHT
Copyright (c) 2008 David Rolsky. All rights reserved. This program is free software; you can redistribute it and/or modify it under the same terms as Perl itself. This module was generated from data provided by the CLDR project, see the LICENSE.cldr in this distribution for details on the CLDR data's license. perl v5.16.2 2013-08-25 DateTime::Locale::cch(3)
All times are GMT -4. The time now is 02:45 AM.
Unix & Linux Forums Content Copyright 1993-2022. All Rights Reserved.
Privacy Policy