Python | Wise amount in a nested list column



Examples :

  Input:  [[1, 5, 3], [2, 7, 8], [4, 6, 9]]  Output:  [7, 18, 20]  Input:  [[20, 5], [2, 54], [45, 9], [72, 3]]  Output:  [139, 71] 

Method # 1: postal code, using list comprehension

We can find the sum of each column of a given nested list using the zip python function, enclosing it in a list.

# Python3 program for nested list column wise sum

 

def column_sum (lst):

 

return [ sum (i) for i in zip ( * lst)]

 
# Driver code

lst = [[ 1 , 5 , 3 ], [ 2 , 7 , 8 ], [ 4 , 6 , 9 ]]

print (column_sum (lst))

Output:

 [7, 18, 20] 

Method # 2: Using the map () method

Another way — use map () . We apply the sum function to each element in a column and find the sum of each column accordingly.

# Python3 program for the column wise sum of the nested list

 

def column_sum (lst):

  

  return list ( map ( sum , zip ( * lst)))

 
# Driver code

lst = [[[ 1 , 5 , 3 ], [ 2 , 7 , 8 ], [ 4 , 6 , 9 ]]

print (column_sum (lst))

Output:

 [7, 18, 20] 

Method # 3: Using numpy.sum ()

The numpy.sum () function returns the sum of the array elements along the specified axis.

# Python3 program for the wise sum column of a nested list

from numpy import array

 

def column_sum (lst):

arr = array (lst)

return sum (arr, 0 ). tolist ()

 
# Driver code

lst = [[ 1 , 5 , 3 ], [ 2 , 7 , 8 ], [ 4 , 6 , 9 ]]

print (column_sum (lst))

Output:

 [7, 18, 20]