Maxmum value in a row...


 
Thread Tools Search this Thread
Top Forums Programming Maxmum value in a row...
# 1  
Old 04-13-2010
Maxmum value in a row...

I have file like
1 0 0 2 0 0 4 0 0....
2 0 1 3 0 0 0 1 0....

i need to find the max value of a row and store it in a file...similarly of all the rows to file..
and also minimum value except zero ...and store them in other file..and also number of such values that are greater than minimum value of that row....
# 2  
Old 04-27-2010
What language?

Is this in C, C++, or is this in a shell script?

concept is simple... read 1 line at a time and then read any non-space characters one at a time checking if the character is larger then the last. If it is update a variable to be the new value. Same with min values only reversed. Now check for values between your max and min. At the end of the line output to file.

Shell script example:
Code:
#!/bin/sh
linenum=1
cat myfile.txt |while read line
do
	max=0
	min=255 # set to a known high value
	between=""
    # First we get the min and max
    for char in $line
    do
        if [ $char -gt $max ]
        then
            max=$char
		fi
        if [ $char -lt $min  -a $char -gt 0 ]
        then
            min=$char
        fi
    done
    # Now we have to check for numbers between the min and max
    for char in $line
    do
        if [ $char -lt $max -a $char -gt $min ]
        then
            between="$between $char"
        fi
    done
    # Now send the values to your files as needed
    # Notice the '>>' for appending to a file
    echo "Line $linenum max: $max" >> max_file.txt
    echo "Line $linenum min: $min" >> min_file.txt
    echo "Line $linenum between: $between" >> between_file.txt
    linenum=$((linenum + 1))
done


Last edited by ddreggors; 04-27-2010 at 03:06 PM..
# 3  
Old 04-27-2010
try the below command

Code:
kamaraj@kamaraj-laptop:~/Desktop/testing$ cat values
1 0 0 2 0 0 4 0 0
2 0 1 3 0 0 0 1 0
24 24 24 23 4 23 423 4 234 
294 2 42 4 23 4 235 23 498
242 42 4 234 23 4 2341
2423 4 23 42 34 23 432
3423 234 234 23 423
2 2 3 423 4 6 45 43 534 5
kamaraj@kamaraj-laptop:~/Desktop/testing$ awk '{big=0;for(i=1;i<=NF;i++) if($i>big) big=$i; print big}' values 
4
3
423
498
2341
2423
3423
534

Login or Register to Ask a Question

Previous Thread | Next Thread

10 More Discussions You Might Find Interesting

1. UNIX for Beginners Questions & Answers

Keep only the closet match of timestamped row (include headers) from file1 to precede file2 row/s

This is a question that is related to one I had last August when I was trying to sort/merge two files by millsecond time column (in this case column 6). The script (below) that helped me last august by RudiC solved the puzzle of sorting/merging two files by time, except it gets lost when the... (0 Replies)
Discussion started by: aachave1
0 Replies

2. Shell Programming and Scripting

Splitting single row into multiple rows based on for every 10 digits of last field of the row

Hi ALL, We have requirement in a file, i have multiple rows. Example below: Input file rows 01,1,102319,0,0,70,26,U,1,331,000000113200000011920000001212 01,1,102319,0,1,80,20,U,1,241,00000059420000006021 I need my output file should be as mentioned below. Last field should split for... (4 Replies)
Discussion started by: kotra
4 Replies

3. UNIX for Beginners Questions & Answers

Keep only the closet match of timestamped row (include headers) from file1 to precede file2 row/s

My original files are like this below and I distinguish them from the AP_ID (file1 has 572 and file2 has 544). Also, the header on file1 has “G_” pre-pended. NOTE: these are only snippets of very large files and much of the data is not present here. Original File 1: ... (36 Replies)
Discussion started by: aachave1
36 Replies

4. Shell Programming and Scripting

Add Row from First Row (Split Row)

HI Guys, I have Below Input :- RepigA_hteis522 ReptCfiEtrBsCll_aofe MSL04_MSL2_A25_1A 0 9 MSL04_MSL2_A25_1B 0 9 MSL04_MSL2_A25_1C 0 9 RepigA ReptCfiEtrBsCll hteis522 aofe MSL04_MSL2_A25_1A 0 9 MSL04_MSL2_A25_1B 0 9 MSL04_MSL2_A25_1C 0 9 Split Data in two first row... (2 Replies)
Discussion started by: pareshkp
2 Replies

5. Shell Programming and Scripting

Comparing two files on row by row and send the report

Comparing two files on row by row File1 ecount~100 dcount~200 ccount~300 zxcscount~5000 and so on. File2 ecount~100 dcount~203 ccount~300 zxcscount~5000 and so on. If i use diff command (1 Reply)
Discussion started by: onesuri
1 Replies

6. Shell Programming and Scripting

Subtracting each row from the first row in a single column file using awk

Hi Friends, I have a single column data like below. 1 2 3 4 5 I need the output like below. 0 1 2 3 4 where each row (including first row) subtracting from first row and the result should print below like the way shown in output file. Thanks Sid (11 Replies)
Discussion started by: ks_reddy
11 Replies

7. UNIX for Dummies Questions & Answers

Shell Script: Traverse Database Table Row by Row

Hello Everyone, My issue is that I want to traverse a database table row by row and do some action on the value retrieved in each row. I have gone through a lot of shell script questions/posts. I could find row by row traversal of a file but not a database table. Please help. Thanks &... (5 Replies)
Discussion started by: ahsan.asghar
5 Replies

8. Shell Programming and Scripting

awk command : row by row merging of two files

I want to write a scrpit to merge files row wise (actually concatinating) main.txt X Y Z file 1 A B C file 2 1 2 3 now i want the script to check if the file1 is empty or not, if empty then make it like A B C 1 2 3 again to check if second file is empty if not do as done... (0 Replies)
Discussion started by: shashi792
0 Replies

9. UNIX for Dummies Questions & Answers

How to calculate the percentage/fraction of each value in a row against the maximum row value?

Hi, For each row in a file, i would like to identify the maximum value and calculate the percentage/fraction of the max for other values in the row. Then, I would like to print a copy of the file where values above a threshold are replaced with "1" and other values are left as "0". In the... (2 Replies)
Discussion started by: auburn
2 Replies

10. Shell Programming and Scripting

Changing the column for a row in a text file and adding another row

Hi, I want to write a shell script which increments a particular column in a row from a text file and then adds another row below the current row with the incremented value . For Eg . if the input file has a row : abc xyz lmn 89 lm nk o p I would like the script to create something like... (9 Replies)
Discussion started by: aYankeeFan
9 Replies
Login or Register to Ask a Question