05-19-2009
add coloum value based on first coloum
Hi i have a file and i want to add the coloum values
like
9067 is coming twice here so o/p willbe like
9067,sum of 3rd coloum,sum of 4th coloum
9015 is coming 0nce then o/p
9015,15,6
sum is happening based on first coloum it will add all the third coloum and 4th coloum value where first coloum matches
a.txt
9067,AE,11,2
9061,AA,12,3
9003,AB,13,4
9067,AA,14,5
9015,AA,15,6
9061,AD,16,7
o/p
9067,25,8
9061,28,10
9003,13,4
9015,15,6
i am using nawk -F "," '{ a[$1]++ ; sum[$1] += $3 } END { for (k in sum) print k "," sum[k] "," a[k]}' a.txt
but is is giving o/p
9003,13,1
9015,15,1
9061,28,2
9067,25,2
pls let me know the correct code
10 More Discussions You Might Find Interesting
1. Shell Programming and Scripting
Dear friends,
I have a dataset like this
2.18 66.86 27.9
2.18 66.86 27.9
2.18 66.86 27.9
2.15 66.88 27.9
2.15 66.88 27.9
Now i have another dataset containing date coloum like this
22-12-2005
22-12-2005
22-12-2005
22-12-2005
22-12-2005
Now i want to... (3 Replies)
Discussion started by: rajan_ka1
3 Replies
2. Shell Programming and Scripting
I have a file like the format
000002371627240000023716272455577818030000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000001099001099425%00109925%IPY 2007013120070227Y99991231N YYX SRT0001010125%0000503318882HANDH800 R... (3 Replies)
Discussion started by: vaskarbasak
3 Replies
3. Shell Programming and Scripting
Hi,
i am new to perl scripting.. i am still learing it.. i am asked to write a perl script which should compare 2 coloums of 2 different files. if those 2 coloumn are same the script should store the both the lines in 2 diff files.
these are files,
file 1:
21767016 226112 char
19136520... (3 Replies)
Discussion started by: vasuki
3 Replies
4. Shell Programming and Scripting
Add 35 to the 3rd col (12000) in input if it is "+" and it will be 12035 in output.
Some thing like
awk '{if ($3==+) print $2,$3,$3+35,$1 else print $2,$3-35,$3,$1}'
+ abc1 12000
- abc2 10000
+ xyz1 11111
- vbcx 20036
+ xy_z 33333
output
abc1 ... (2 Replies)
Discussion started by: ruby_sgp
2 Replies
5. Shell Programming and Scripting
Hi,
I have a file with more than 1000 lines with ~14 columns. I need to find all the lines with matching value in column 14 and then add column 6 in all the lines before printing them out..
e.g if this is the input file:
abc test input 10 for process 2345
abc test input 15 for process 2348... (1 Reply)
Discussion started by: xkdasari
1 Replies
6. UNIX for Dummies Questions & Answers
Hi all,
I already transferred list of files from ftp server with files name end with $Y$m$d
Example my files
data_20140101.xls
data_20140102.xls
data-20140103.xls
and content of each files, for example data_20140101.xls
USA|16846481|8871374|534909|0|0|0|700|5351981|0|31605445... (6 Replies)
Discussion started by: radius
6 Replies
7. UNIX for Beginners Questions & Answers
Dear Sir,
I need to add new column (last column) based on files name.
my files name
20170809_target_tdc_pmx4.xls
20170809_target_tdc_pmx5.xls
20170809_target_tdc_pmx6.xls
for example file : 20170809_target_tdc_pmx4.xls
Item code Quantity Unit price Serial number... (1 Reply)
Discussion started by: radius
1 Replies
8. Shell Programming and Scripting
At begining of column 2 the same block (2000) have 3 lines, in the next block (2336) it have 9 lines and for block (2524) 3 lines. ... (0 Replies)
Discussion started by: jiam912
0 Replies
9. UNIX for Beginners Questions & Answers
In the awk below I am trying to add a | that will adjust $2 in the ouput by adding +1 if the original value from file that was used in $3 had a - in it. Line 3 of file is an example of this. In my current awk I just subtract one but I am not sure how to only apply this to those values without a -.... (5 Replies)
Discussion started by: cmccabe
5 Replies
10. Shell Programming and Scripting
The script it should add all the users from this file "users.txt" All users should have the login shell as /sbin/nologin. When this script is called with any other argument, it should print the message as “Input File Not Found”ť. When this script is run without any argument, it should display... (1 Reply)
Discussion started by: invinzin21
1 Replies
LEARN ABOUT DEBIAN
lire::sum
Sum(3pm) LogReport's Lire Documentation Sum(3pm)
NAME
Lire::Sum - Lire class that implements the sum operator
SYNOPSIS
use Lire::Sum
DESCRIPTION
Class that implements the sum operator. This operator will compute the field's sum in a group of DLF records.
It's possible to compute a weighted sum in which each value is first multiplied by the value of another DLF field.
Its also possible to express the count as a ratio of the total count for the group or table.
METHODS
new( %params )
Creates a new Lire::Count object. In addition to the values supported by its parents, the weight and ratio attributes will be initialized
to the values specified in the %params argument.
weight( [$new_weight] )
Returns the DLF field's name by which the values will be multiplied before being summed.
You can change the weight field by specifying a new name as the $new_weight parameter. Use undef to remove the use of a weighting field.
ratio([$new_ratio])
Returns how the sum will be expressed. This can one of three possible values:
none
Default. The absolute sum will be used.
group
The sum will be expressed as a percentage of the group's sum.
table
The sum will be expressed as a percentage of the table's total sum.
SEE ALSO
zLire::ReportSpec(3pm), Lire::ReportOperator(3pm), Lire::Aggregator(3pm), Lire::Aggregate(3pm).
AUTHOR
Francis J. Lacoste <flacoste@logreport.org>
VERSION
$Id: Sum.pm,v 1.17 2008/03/09 19:27:31 vanbaal Exp $
COPYRIGHT
Copyright (C) 2001, 2002 Stichting LogReport Foundation LogReport@LogReport.org
This file is part of Lire.
Lire is free software; you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free
Software Foundation; either version 2 of the License, or (at your option) any later version.
This program is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details.
You should have received a copy of the GNU General Public License along with this program (see COPYING); if not, check with
http://www.gnu.org/copyleft/gpl.html.
Lire 2.1.1 2008-03-09 Sum(3pm)