Sponsored Content
Top Forums Shell Programming and Scripting Filling in the missing data point by awk Post 302964416 by MadeInGermany on Thursday 14th of January 2016 08:15:46 AM
Old 01-14-2016
You do something in the BEGIN section, before the before.txt is processed.
And then you do nothing in the main section (where it's too late anyway).
The solution is to process the file in the main section and store it into variables (An array that is addressed by the $1 values), and then process/print in the END section. Like RudiC did.
The following is multi-line for readability (at least for me), and does not have the NR==FNR {...; next} overhead (that takes the first given file, where the following code will take the next file(s) - but here is only one file).
Code:
awk '
# main section; process all lines of all given files
{ T[$1]=$2 }
END {
  for (i=140; i<=150; ++i) {
    if (i in T) print i,T[i]; else print i,0
  }
}' before.txt

It prints with an explicit if - else, like you did; compare with RudiC's implicit if!
These 2 Users Gave Thanks to MadeInGermany For This Post:
 

10 More Discussions You Might Find Interesting

1. Shell Programming and Scripting

Filling in missing columns

Hi all, I have a file that contains about 1000 rows and 800 columns. Nearly every row has 800 columns but some DONT. I want to extend the rows that dont have values with NA's. Here is an example: my file bob 2 4 5 6 8 9 4 5 tar 2 4 5 4 3 2 9 1 bro 3 5 3 4 yar 2 ... (7 Replies)
Discussion started by: gisele_l
7 Replies

2. UNIX for Advanced & Expert Users

Extract data from a particular point in a file

Hi, I wanted to extract the data from a particular comma from each line. My file contains some 10000 lines and each lines are separated by commas. There are 60 fields which are separated by 59 commas. I wanted to show the data which are there after the 49th comma from each line. For... (2 Replies)
Discussion started by: satyaatcgi
2 Replies

3. Solaris

import lun data to mount point - Solaris 10

Hi Guys, I have EMC Storage and from this storage I have maped lun5 to Sun Solaris server and I have created on this lun mount point with name /application I have anothere Sun Solaris server and I'll colne lun5 to lun10 from storage level so the data of lun5 will be in lun10 how to... (6 Replies)
Discussion started by: Mr.AIX
6 Replies

4. Shell Programming and Scripting

filling in strings in a template file using awk

Hi all, I have a template form to fill in for quite a number of files and I want to automate the filling-in process. the concept seemed to be simple but i cant get it work. the template form is a text file containing the information below: File Name: Date Created: Contents: I need to... (4 Replies)
Discussion started by: ida1215
4 Replies

5. UNIX for Dummies Questions & Answers

Filling a tab-separated file with known missing entries in columns

Hello all, I have a file which is tab separated like that: PHE_205_A TIP_127_W ARG_150_B MET_1150_A TIP_12_W VAL_11_B GLU_60_A TIP_130_W ARG_143_B LEU_1033_A TIP_203_W ARG_14_B SER_1092_A TIP_203_W THR_1090_A TIP_203_W SER_1092_A TIP_25_W ... (6 Replies)
Discussion started by: TheTransporter
6 Replies

6. UNIX for Dummies Questions & Answers

Merging two text files by a column and filling in the missing values

Hi, I have to text files that I want to merge by the first column. The values in the first column pretty much match for the first part. However there are some values that are present in column 1 and not present in column 2 or vice versa. For such values I would like to substitute X for the... (9 Replies)
Discussion started by: evelibertine
9 Replies

7. Solaris

Mount point at 100%, but cannot see what is filling up

Hi Please I need some help, I have system running solaris 10, with a file system at 100%: df -h /nikira Filesystem size used avail capacity Mounted on /dev/dsk/c5t500A09818DE3E799d0s0 226G 223G 0K 100% /nikira but when I look inside to... (17 Replies)
Discussion started by: fretagi
17 Replies

8. Programming

Find gaps in time data and replace missing time value and column 2 value by interpolation in awk

Dear all, I am kindly seeking assistance on the following issue. I am working with data that is sampled every 0.05 hours (that is 3 minutes intervals) here is a sample data from the file 5.00000 15.5030 5.05000 15.6680 5.10000 16.0100 5.15000 16.3450 5.20000 16.7120 5.25000... (4 Replies)
Discussion started by: malandisa
4 Replies

9. Post Here to Contact Site Administrators and Moderators

How to sum up data in fixed width file with decimal point?

HI Everyone, I have below source file AAA|NAME1|ADDRESS1|300.20 BBB|NAME2|ADDRESS2|400.31 CCC|NAME3|ADDRESS3|300.34 I have requirement where I need to sum up fourth field in above fixed width pipe delimited flat file. When I use below code, it gives me value 1001.00 But I am expecting... (1 Reply)
Discussion started by: patricjemmy6
1 Replies

10. UNIX for Dummies Questions & Answers

Missing data

Gents, Using the following code. awk -F: 'BEGIN { print "Time,FFID,Swath,Line,Point"; } /(SCI TB Timestamp Local : |File # :|Swath Name :|Tape # :|Line Name :|Point Number :|Type_Of_Dump|Type_Of_Test|Tape_Nb|Tape_Label|Date|Hist)/{ sub("^*","",$2);sub("*$","",$2); if($1 ~ /Hist/) { printf... (2 Replies)
Discussion started by: jiam912
2 Replies
PPI::Statement::Scheduled(3)				User Contributed Perl Documentation			      PPI::Statement::Scheduled(3)

NAME
PPI::Statement::Scheduled - A scheduled code block INHERITANCE
PPI::Statement::Scheduled isa PPI::Statement::Sub isa PPI::Statement isa PPI::Node isa PPI::Element DESCRIPTION
A scheduled code block is one that is intended to be run at a specific time during the loading process. There are five types of scheduled block: BEGIN { # Executes as soon as this block is fully defined ... } CHECK { # Executes after overall compile-phase in reverse order ... } UNITCHECK { # Executes after compile-phase of individual module in reverse order ... } INIT { # Executes just before run-time ... } END { # Executes as late as possible in reverse order ... } Technically these scheduled blocks are actually subroutines, and in fact may have 'sub' in front of them. METHODS
type The "type" method returns the type of scheduled block, which should always be one of 'BEGIN', 'CHECK', 'UNITCHECK', 'INIT' or 'END'. TO DO
- Write unit tests for this package SUPPORT
See the support section in the main module. AUTHOR
Adam Kennedy <adamk@cpan.org> COPYRIGHT
Copyright 2001 - 2011 Adam Kennedy. This program is free software; you can redistribute it and/or modify it under the same terms as Perl itself. The full text of the license can be found in the LICENSE file included with this module. perl v5.16.2 2011-02-25 PPI::Statement::Scheduled(3)
All times are GMT -4. The time now is 01:22 PM.
Unix & Linux Forums Content Copyright 1993-2022. All Rights Reserved.
Privacy Policy