Sponsored Content
Top Forums Shell Programming and Scripting Finding difference between two columns of unequal length Post 302926908 by Akshay Hegde on Friday 28th of November 2014 10:43:27 AM
Old 11-28-2014
@ Scrutinizer : elegant solution Smilie

Not one liner solution, I just wanted to share this function, you can try this

Code:
awk '

# Array, nearest neighbour using simple min-max method
function _get_keyMnMx(Arr,key,arg,   low,upp,i)
{	
	for(i in Arr)
	{ 
                # Make it Numeric
                i+=0

		if(i < key)
		{ 
			low =  (low !="" && low > i) ? low : i
		}
		if(i > key)
		{   
			upp =  (upp !="" && upp < i) ? upp : i
		}  
	}		    
	low  =  (low == "") ? "NaN" : low 
	upp  =  (upp == "") ? "NaN" : upp 
			 
	return ( tolower(arg)=="up" ? upp : tolower(arg) == "dw" ? low : low " " upp )	 
}

# Reading your gostate.txt
FNR==NR{
	Array[$1]
	next
}

#  Reading waitstate.txt
{
	# larger than column1 value from gostate.txt file
	largerthanthis = _get_keyMnMx(Array,$1,"up")


	print $1, largerthanthis, largerthanthis - $1
}
   ' gostate.txt waitstate.txt


Resulting


Code:
18.2 22.4 4.2
82.1 89.4 7.3


Last edited by Akshay Hegde; 11-28-2014 at 11:56 AM..
This User Gave Thanks to Akshay Hegde For This Post:
 

10 More Discussions You Might Find Interesting

1. Shell Programming and Scripting

Finding out the length of a string held within a variable

:confused: Does anyone know which command I can use to find out the length of a string held within a variable? (5 Replies)
Discussion started by: dbrundrett
5 Replies

2. Shell Programming and Scripting

Help with finding length of a field

I have a pipe delimited file. I need to check that the first and second fields are 5 characters long and if not i need to append 0 in front of them to make them 5 characters long. can some body let mwe know how i can find the length of the two fields and then make them 5 characters long if they... (6 Replies)
Discussion started by: dsravan
6 Replies

3. Shell Programming and Scripting

Finding the time difference

Hi, I have two files A.txt and B.txt. And i have the following attributes in both the files. <date and time> <a unique id> For eg: <2007 May 30 20:29:36:034 GMT> <ID1> in A.txt <2007 May 30 20:42:36:038 GMT> <ID1> in B.txt Now, i need to find the time difference... (0 Replies)
Discussion started by: padma.raajesh
0 Replies

4. Shell Programming and Scripting

Finding multiple column values and match in a fixed length file

Hi, I have a fixed length file where I need to verify the values of 3 different fields, where each field will have a different value. How can I do that in a single step. (6 Replies)
Discussion started by: naveen_sangam
6 Replies

5. Shell Programming and Scripting

Finding the length of a string in a field

I have a field MPN-BANK-NUMBERO:006,00:N in a file FILE1 How can i display the length of the Bank Number.Any idea ? The output shud take the following format FILE 1 6 Where 1 is the starting position and 6 is the Ending position. (9 Replies)
Discussion started by: bobby1015
9 Replies

6. Shell Programming and Scripting

finding difference between two files

Hi, I have two files one with 12486 lines second one with 13116 As per the comparsion between two files the count have 630 difference I used diff command to find the difference between two files but it's not understandable could any one suggest any command to get 630 records in a new... (4 Replies)
Discussion started by: thelakbe
4 Replies

7. Shell Programming and Scripting

Finding the records with a specified length

I have a sample txt file which has different variable lengths of 2,10,3,15. What is the command that I need use in order to get the record count that has length '3' Thanks (3 Replies)
Discussion started by: bobby1015
3 Replies

8. Shell Programming and Scripting

Need help in finding in date difference

Hi, My date is coming as STARTDATE=Sun Jul 15 00:34:23 2012 ENDDATE=Sun Jul 15 00:50:04 2012I want difference between these two dates,anyone's helps will be appriciated. Thanks Prasoon (3 Replies)
Discussion started by: prasson_ibm
3 Replies

9. Shell Programming and Scripting

Finding the length of the longest column

Hi, I am trying to figure out how to get the length of the longest column in the entire file (because the length varies from one row to the other) I was doing this at first to check how many fields I have for the first row: awk '{print NF; exit}' file Now, I can do this: awk '{ if... (4 Replies)
Discussion started by: MIA651
4 Replies

10. Shell Programming and Scripting

Finding difference in 2 different timestamps

Legends, I have a requirement to run the script exactly after one hour of completion of dependent script. Eg: Script B should run after one hour on the completion of Script A. I got the time stamps using following variables. these scripts runs in autosys > DATE=`date +%H:%M` >... (4 Replies)
Discussion started by: sdosanjh
4 Replies
mlib_SignalLimit(3MLIB) 				    mediaLib Library Functions					   mlib_SignalLimit(3MLIB)

NAME
mlib_SignalLimit, mlib_SignalLimit_S16_S16, mlib_SignalLimit_S16S_S16S, mlib_SignalLimit_S16, mlib_SignalLimit_S16S, mlib_Signal- Limit_F32_F32, mlib_SignalLimit_F32S_F32S, mlib_SignalLimit_F32, mlib_SignalLimit_F32S - signal hard limiting SYNOPSIS
cc [ flag... ] file... -lmlib [ library... ] #include <mlib.h> mlib_status mlib_SignalLimit_S16_S16(mlib_s16 *dst, const mlib_s16 *src, const mlib_s16 *low, const mlib_s16 *high, mlib_s32 n); mlib_status mlib_SignalLimit_S16S_S16S(mlib_s16 *dst, const mlib_s16 *src, const mlib_s16 *low, const mlib_s16 *high, mlib_s32 n); mlib_status mlib_SignalLimit_S16(mlib_s16 *srcdst, const mlib_s16 *low, const mlib_s16 *high, mlib_s32 n); mlib_status mlib_SignalLimit_S16S(mlib_s16 *srcdst, const mlib_s16 *low, const mlib_s16 *high, mlib_s32 n); mlib_status mlib_SignalLimit_F32_F32(mlib_f32 *dst, const mlib_f32 *src, const mlib_f32 *low, const mlib_f32 *high, mlib_s32 n); mlib_status mlib_SignalLimit_F32S_F32S(mlib_f32 *dst, const mlib_f32 *src, const mlib_f32 *low, const mlib_f32 *high, mlib_s32 n); mlib_status mlib_SignalLimit_F32(mlib_f32 *srcdst, const mlib_f32 *low, const mlib_f32 *high, mlib_s32 n); mlib_status mlib_SignalLimit_F32S(mlib_f32 *srcdst, const mlib_f32 *low, const mlib_f32 *high, mlib_s32 n); DESCRIPTION
Each of these functions performs hard limiting. For monaural signals, the following equation is used: dst[i] = low[0] if src[i] < low[0] dst[i] = src[i] if low[0] <= src[i] < high[0] dst[i] = high[0] if src[i] >= high[0] where i = 0, 1, ..., (n - 1). For stereo signals, the following equation is used: dst[2*i] = low[0] if src[2*i] < low[0] dst[2*i] = src[2*i] if low[0] <= src[2*i] < high[0] dst[2*i] = high[0] if src[2*i] >= high[0] dst[2*i+1] = low[1] if src[2*i+1] < low[1] dst[2*i+1] = src[2*i+1] if low[1] <= src[2*i+1] < high[1] dst[2*i+1] = high[1] if src[2*i+1] >= high[1] where i = 0, 1, ..., (n - 1). PARAMETERS
Each of the functions takes some of the following arguments: dst Destination signal array. src Source signal array. srcdst Source and destination signal array. low Lower input limit. In the stereo version, low[0] contains the lower limit for channel 0, and low[1] contains the lower limit for channel 1. high Upper input limit. In the stereo version. high[0] contains the upper limit for channel 0, and high[1] contains the upper limit for channel 1. n Number of samples in the source signal array. RETURN VALUES
Each of the functions returns MLIB_SUCCESS if successful. Otherwise it returns MLIB_FAILURE. ATTRIBUTES
See attributes(5) for descriptions of the following attributes: +-----------------------------+-----------------------------+ | ATTRIBUTE TYPE | ATTRIBUTE VALUE | +-----------------------------+-----------------------------+ |Interface Stability |Evolving | +-----------------------------+-----------------------------+ |MT-Level |MT-Safe | +-----------------------------+-----------------------------+ SEE ALSO
attributes(5) SunOS 5.10 10 Nov 2004 mlib_SignalLimit(3MLIB)
All times are GMT -4. The time now is 03:51 PM.
Unix & Linux Forums Content Copyright 1993-2022. All Rights Reserved.
Privacy Policy