Sponsored Content
Top Forums UNIX for Dummies Questions & Answers Integrate MIN and MAX in a string Post 302769678 by RudiC on Wednesday 13th of February 2013 03:54:08 AM
Old 02-13-2013
@elixir_sinari: 2 fast 4 me.
Nevertheless, this might at least be worth a shot:
Code:
awk     'BEGIN{FS=OFS=";"}
         {line[NR] = $0
          a = split ($1, b, "%")
          for (i=1; i<=a; i++)
                {b[i]=b[i]?b[i]:"0";
                 if ((!MIN [$2,i]) || (MIN [$2,i] > b[i])) MIN [$2,i] = b[i]
                 if ((!MAX [$2,i]) || (MAX [$2,i] < b[i])) MAX [$2,i] = b[i]
                }
          if (a > maxfld[$2]) maxfld[$2] = a
         }
         END    {for (i=1; i<=NR; i++)
                  {printf "%s;", line[i]
                   split (line[i], tmp)
                   for (j=1; j<=maxfld[tmp[2]]; j++)
                      printf ("%s-%s%%", MIN[tmp[2],j], MAX[tmp[2],j])
                   printf "\n"
                  }
                }
        ' file
1%2%3%4%;AA;1-5%2-6%3-7%4-8%0-9%
5%6%7%8%9;AA;1-5%2-6%3-7%4-8%0-9%
1%2%3%4%5%6;BB;1-7%2-9%3-10%4-11%5-12%6-6%
7%9%10%11%12;BB;1-7%2-9%3-10%4-11%5-12%6-6%

There's an inconsistency on value 6 in the BB records: the req. has 6-12 (where does the 12 come from?), and elixir_sinari has 0-6, which might sound logical, but the value is missing entirely unlike value 5 in AA's first line ... so, what to do?

Last edited by RudiC; 02-13-2013 at 03:32 PM.. Reason: Typo
This User Gave Thanks to RudiC For This Post:
 

10 More Discussions You Might Find Interesting

1. Shell Programming and Scripting

min and max value of process id

We are running a AIX 5.2 OS. Would anyone happen to know what the max value for a process id could be? Thanks jerardfjay :) (0 Replies)
Discussion started by: jerardfjay
0 Replies

2. Shell Programming and Scripting

Help in finding the max and min position

Hi, I have this input file called ttbitnres (which is catenated and sorted):- 8 0.4444 213 10 0.5555 342 11 0.5555 321 12 0.5555 231 13 0.4444 400 My code is at :- #!/bin/bash echo -e Version "\t" Number of Pass "\t" Number of Fail "\t" Rank Position "\t"Min "\t" Max... (1 Reply)
Discussion started by: ahjiefreak
1 Replies

3. Shell Programming and Scripting

get min, max and average value

hi! i have a file like the attachement. I'd like to get for each line the min, max and average values. (there is 255 values for each line) how can i get that ? i try this, is it right? BEGIN {FS = ","; OFS = ";";max=0;min=0;moy=0;total=0;freq=890} $0 !~ /Trace1:/ { ... (1 Reply)
Discussion started by: riderman
1 Replies

4. Shell Programming and Scripting

Data stream between min and max

Hi, I have a text file containing numbers. There are up to 6 numbers per row and I need to read them, check if they are 0 and if they are not zero check if they are within a given interval (min,max). If they exceed the max or min they should be set to max or min respectively, if they are in the... (4 Replies)
Discussion started by: f_o_555
4 Replies

5. Shell Programming and Scripting

to find min and max value for each column!

Hello Experts, I have got a txt files which has multiple columns, I want to get the max, min and diff (max-min) for each column in the same txt file. Example: cat file.txt a 1 4 b 2 5 c 3 6 I want ouput like: cat file.txt a 1 4 b 2 5 c 3 6 Max 3 6 Min 1 4 Diff 2 2 awk 'min=="" ||... (4 Replies)
Discussion started by: dixits
4 Replies

6. Homework & Coursework Questions

Perl max and min issues

I have to find the min and max on a specific column in a file after sending that column and one other to a output file but I keep getting a maximum of zero below is what i have so far if anyone can give me advice on what i am doing wrong the help would be much appreciated # ! /usr/bin/perl -w... (2 Replies)
Discussion started by: dstewie
2 Replies

7. Shell Programming and Scripting

Print min and max value from two column

Dear All, I have data like this, input: 1254 10125 1254 10126 1254 10127 1254 10128 1254 10129 1255 10130 1255 10131 1255 10132 1255 10133 1256 10134 1256 10135 1256 10137... (3 Replies)
Discussion started by: aksin
3 Replies

8. Shell Programming and Scripting

Get the min avg and max with awk

aaa: 3 ms aaa: 2 ms aaa: 5 ms aaa: 10 ms .......... to get the 3 2 5 10 ...'s min avg and max something like min: 2 ms avg: 5 ms max: 10 ms (2 Replies)
Discussion started by: yanglei_fage
2 Replies

9. Shell Programming and Scripting

How to get min and max values using awk?

Hi, I need your kind help to get min and max values from file based on value in $5 . File1 SP12.3 stc 2240806 2240808 + ID1_N003 ID2_N003T0 SP12.3 sto 2241682 2241684 + ID1_N003 ID2_N003T0 SP12.3 XE 2239943 2240011 + ID1_N003 ID2_N003T0 SP12.3 XE 2240077 2241254 + ID1_N003 ... (12 Replies)
Discussion started by: redse171
12 Replies

10. Shell Programming and Scripting

Get min and max value in column

Gents, I have a big file file like this. 5100010002 5100010004 5100010006 5100010008 5100010010 5100010012 5102010002 5102010004 5102010006 5102010008 5102010010 5102010012 The file is sorted and I would like to find the min and max value, taking in the consideration key1... (3 Replies)
Discussion started by: jiam912
3 Replies
PARAM(3)						   BSD Library Functions Manual 						  PARAM(3)

NAME
param -- common parameters SYNOPSIS
#include <sys/param.h> size MAX(size a, size b); size MIN(size a, size b); DESCRIPTION
The <sys/param.h> header includes some common definitions and macros specific to NetBSD. The header is perhaps best characterized as a ker- nel equivalent of <sys/types.h>. The following list summarizes the provided definitions and macros. o First and foremost, the header defines the version of NetBSD. This is defined as #define __NetBSD_Version__ 599004800 /* 5.99.48 */ The general format is ``MMmmrrpp00'', where 'MM' and 'mm' denote the major and minor version, respectively, 'rr' is provided for compatibility, and 'pp' defines the patch level. o Common utility macros such as MAX() and MIN() as well as more specific macros such as STACK(9), ctod(9), mstohz(9), roundup(9), and setbit(9). o Numerous miscellaneous definitions such as limits, constants for the kernel memoryallocators(9), scale factors used by the sched- uler, kthread(9) priorities, and many others. o Definitions provided for historical and compatibility reasons. Examples range from definitions such as ``#define BSD'' to old pri- ority levels used in the kernel. SEE ALSO
bitops(3), cdefs(3), types(3), unistd(3) HISTORY
A <param.h> header appeared already in the Version 4 AT&T UNIX. BSD
April 10, 2011 BSD
All times are GMT -4. The time now is 06:36 AM.
Unix & Linux Forums Content Copyright 1993-2022. All Rights Reserved.
Privacy Policy