05-14-2009
How do I sum one column based on another column?
Hi,
I am new to this forum and new to awk.
I have a file that contains 2 columns.
Heres an example of what it looks like:
10 +
20 +
40 +
50 -
70 -
So the file is tab-delimited. What I want to do is add 10 to column 1 whenever column 2 is + and substract 10 from column 1 whenever column 2 is -.
So the final output would look like this
20 +
30 +
50 +
40 -
60 -
Could someone help me on this one?
Thanks
10 More Discussions You Might Find Interesting
1. Shell Programming and Scripting
i have a file - it will be in sorted order on column 1
abc 0 1
abc 2 3
abc 3 5
def 1 7
def 0 1
--------
i'd like (awk maybe?) to get the results (any ideas)???
abc 5 9
def 1 8 (2 Replies)
Discussion started by: jjoe
2 Replies
2. Shell Programming and Scripting
Hi,
I have below as i/p file:
5ABC 36488989 K 000010000ASB BYTRES
5PQR 45757754 K 000200005KPC HGTRET
5ABC 36488989 K 000045000ASB HGTRET
5GTH 36488989 K 000200200ASB BYTRES
5FTU ... (2 Replies)
Discussion started by: nirnkv
2 Replies
3. Shell Programming and Scripting
I have a following inputfile
MT,AP,CDM,TTML,MUM,GS,SUCC,3
MT,AP,CDM,TTSL,AP,GS,FAIL,9
MT,AP,CDM,RCom,MAH,GS,SUCC,3
MT,AP,CDM,RTL,HP,GS,SUCC,1
MT,AP,CDM,Uni,UPE,GS,SUCC,2
MT,AP,CDM,Uni,MUM,GS,SUCC,2
TTSL,AP,GS,MT,MAH,CDM,SUCC,20
TTML,AP,GS,MT,MAH,CDM,FAIL,10... (2 Replies)
Discussion started by: siramitsharma
2 Replies
4. UNIX for Dummies Questions & Answers
i have file input
aaa ccc,45567,rterw,1
bbb dcs,564543,hjghgh,1
aaa ccc,454,rterw,6
i want to sum based on column 1
expected output
aaa ccc,7
bbb dcs,1 (4 Replies)
Discussion started by: radius
4 Replies
5. UNIX for Dummies Questions & Answers
I have file 1
1/1/2013 A 553.0763397 96 16582 X1 X3 X5 X7 X9
1/1/2013 B 600.8333588 195 11992 X2 X3 X6 X7 X9
1/1/2013 B 459.8333588 195 11992 X1 X3 X6 X7 X9
1/2/2013 A 844.2973022 306 19555 X1 ... (12 Replies)
Discussion started by: radius
12 Replies
6. Shell Programming and Scripting
Hi,
I have a similar input format-
A_1 2
B_0 4
A_1 1
B_2 5
A_4 1
and looking to print in this output format with headers. can you suggest in awk?awk because i am doing some pattern matching from parent file to print column 1 of my input using awk already.Thanks!
letter number_of_letters... (5 Replies)
Discussion started by: prashob123
5 Replies
7. Shell Programming and Scripting
Hi,
I have a table to be imported for R as matrix or data.frame but I first need to edit it because I've got several lines with the same identifier (1st column), so I want to sum the each column (2nd -nth) of each identifier (1st column)
The input is for example, after sorted:
K00001 1 1 4 3... (8 Replies)
Discussion started by: sargotrons
8 Replies
8. UNIX for Dummies Questions & Answers
Hi All,
I have a requirement where I need to find sum of values from column D through O present in a CSV file and check whether the sum of each Individual column matches with the value present for that corresponding column present in the trailer record.
For example, let's assume for column D... (9 Replies)
Discussion started by: tpk
9 Replies
9. Shell Programming and Scripting
Hello,
I am trying to store sum of a column as a new column inside a file but have to find the column names dynamically
I/p
c1,c2,c3,c4,c5
10,20,30,40,50
20,30,40,50,60
If i want to find sum only column c1, c3 and output it as c6,c7
O/p
c1,c2,c3,c4,c5,c6,c7
10,20,30,40,50,30,70... (6 Replies)
Discussion started by: mkathi
6 Replies
10. UNIX for Beginners Questions & Answers
Hi All,
I have a file as below and want to sum based on the id in the first column
Input
10264;ATE; 12
10265;SES;11
10266AUT;50
10264;ATE;10
10265;SES;13
10266AUT;89
10264;ATE;1
10265;SES;15
10266AUT;78
Output
10264;ATE; 23
10265;SES;39
10266AUT;139 (6 Replies)
Discussion started by: arunkumar_mca
6 Replies
LEARN ABOUT CENTOS
column
COLUMN(1) User Commands COLUMN(1)
NAME
column - columnate lists
SYNOPSIS
column [options] file...
DESCRIPTION
The column utility formats its input into multiple columns. Rows are filled before columns. Input is taken from file or, by default, from
standard input. Empty lines are ignored.
OPTIONS
-c, --columns width
Output is formatted to a width specified as number of characters.
-t, --table
Determine the number of columns the input contains and create a table. Columns are delimited with whitespace, by default, or with
the characters supplied using the separator. Table output is useful for pretty-printing.
-s, --separator separators
Specify possible table delimiters (default is whitespace).
-o, --output-separator separators
Specify table output delimiter (default is two whitespaces).
-x, --fillrows
Fill columns before filling rows.
-h, --help
Print help and exit.
ENVIRONMENT
The environment variable COLUMNS is used to determine the size of the screen if no other information is available.
EXAMPLES
sed 's/#.*//' /etc/fstab | column -t
BUGS
The util-linux version 2.23 changed -s option to be non-greedy, for example:
$ printf "a:b:c
1::3
" | column -t -s ':'
old output:
a b c
1 3
new output (since util-linux 2.23)
a b c
1 3
SEE ALSO
colrm(1), ls(1), paste(1), sort(1)
HISTORY
The column command appeared in 4.3BSD-Reno.
AVAILABILITY
The column command is part of the util-linux package and is available from ftp://ftp.kernel.org/pub/linux/utils/util-linux/.
util-linux October 2010 COLUMN(1)