# [Tutor] How to calculate high value from multiple lines for each column

Fosiul Alam fosiul at gmail.com
Tue Feb 23 15:33:01 EST 2016

```Hi Alan
Yes, I am having some challanges .
this is the example file  :

so there are 2 dm (dm-30 and dm-31) wich 3 sample value

dm-30             1.47    36.48    2.82    0.66   270.84   148.56
240.96     0.06   44.99  18.27   6.36
dm-31             1.47    36.49    2.82    0.66   270.85   148.58
240.94     0.06   45.03  18.28   6.37
dm-30             0.00     0.00    0.00    0.00     0.00     0.00
0.00     0.00    0.00   2.00   1.00
dm-31             0.00     0.00    0.00    0.00     0.00     0.00
0.00     0.00    0.00   3.00   1.50
dm-30             0.00     0.00    0.00    0.00     0.00     0.00
0.00     0.00    0.00   0.40   0.50
dm-31             0.00     0.00    0.00    0.00     0.00     0.00
0.00     0.00    0.00   0.70   0.60

Basically I am interested with 10 and 11 ( last 2 column) with bellow 2 way

a) ignore the firsrt value for each dm  ( so line number 1 and 2 will
totally ignore)  : I am having trouble to do that
b) get the max value for clumn 10 and 11 for each dm (dm-30 and dm-31) : I
am having to do that

I went through this far : -

from operator import itemgetter

def _get_io():

with open (DM,'r')as f:
return content

s_value= dict()
u_value=dict()

if __name__ == '__main__':

dm_data=_get_io()

for line in dm_data:

if fields[0] in s_value:
s_value[fields[0]].append(fields[10])
else:
s_value[fields[0]]=[fields[10]]

if fields[0] in u_value:
u_value[fields[0]].append(fields[11])
else:
u_value[fields[0]]=[fields[11]]

print s_value
print u_value

Python output:=

{'dm-30': ['18.27', '2.00', '0.40'], 'dm-31': ['18.28', '3.00', '0.70']}
{'dm-30': ['6.36', '1.00', '0.50'], 'dm-31': ['6.37', '1.50', '0.60']}

I wanted  to combine s_value and u_value with each Max value like bellow
{'dm-30': ['2.0', '1.0'], 'dm-31': ['3.0', '1.50']}

or just get the Max value for each dm in s_value and u_value
like bellow
{'dm-30':2.00, 'dm-31': ['3.00]}
{'dm-30': [1.00], 'dm-31': [1.50]}

Any help will be really appreciable

On Wed, Feb 17, 2016 at 10:22 AM, Alan Gauld <alan.gauld at btinternet.com>
wrote:

> On 16/02/16 22:28, Fosiul Alam wrote:
> > Hi
> > I am very new to python, basically , I want to get the Maximum value for
> > each column
> >
> >                   0.000           0.000           0.000        0
> > (0.0%)           0.000           0.600
> >                   0.000           3.000           6.000        1
> > (0.0%)           0.300           0.000
> >                   3.000           0.000           0.000        0
> > (0.0%)           0.000           0.000
> >                   5.000           0.000           0.000        1
> ...
> >
> > So  maximum value for 1st column=5
> >       maximum value for 2nd column = 7
> >       maximum value for 3rd colun =6
> >        .......................
> >
> > How can I do this ?
>
> The classical way to represent a table of data is using a list of lists
>
> myData = [[],[],[],[]]  # a table with 4 columns
>
> You can then read the data line by line and insert the values into your
> lists.
>
> for line in dataSource:
>    fields = line.split()
>    myData[0].append(fields[0])
>    myData[1].append(fields[1])
>    etc
>
> Then at the end find the max() of each column
>
> for col in myData:
>     print "Max = " max(col)
>
> There are more efficient ways to do it but that's probably the simplest.
> You need to fill in quite a few blanks, such as how you read your data
> source - is it a file or what?
>
> Try it and come back if you hit problems.
>
> --
> Alan G
> Author of the Learn to Program web site
> http://www.alan-g.me.uk/
> http://www.amazon.com/author/alan_gauld
> Follow my photo-blog on Flickr at:
> http://www.flickr.com/photos/alangauldphotos
>
>
> _______________________________________________
> Tutor maillist  -  Tutor at python.org
> To unsubscribe or change subscription options:
> https://mail.python.org/mailman/listinfo/tutor
>

--
Regards
Fosiul Alam
```