Thought of solving the same problem that I post on awk in my bash scripting blog
Input file:
$ cat file.txt
ID5,17.95,107.0,Y
ID5,6.56,12.3,Y
ID5,7.36,22.5,Y
ID5,4.03,72.2,Y
ID6,282.8,134.1,Y
ID6,111.56,61.7,Y
ID6,171.24,72.4,Y
ID7,125.6,89,Y
Output required: Append a field with value "Agg line" if first field (ID field) is the first unique one, for rest of its (that ID) occurrences, append a field with text "sub-line". .i.e. required output:
Agg line,ID5,17.95,107.0,Y
sub-line,ID5,6.56,12.3,Y
sub-line,ID5,7.36,22.5,Y
sub-line,ID5,4.03,72.2,Y
Agg line,ID6,282.8,134.1,Y
sub-line,ID6,111.56,61.7,Y
sub-line,ID6,171.24,72.4,Y
Agg line,ID7,125.6,89,Y
The python program for solving the same:
fp = open("file.txt", "rU")
lines = fp.readlines()
fp.close()
f_f=" "
for line in lines:
f=line.split(",")
if f[0]==f_f:
print "sub-line,"+line.rstrip()
else:
f_f=f[0]
print "Agg line,"+line.rstrip()
0 Comments:
Post a Comment