Python | Column Mean in tuple list
Last Updated :
20 Mar, 2023
Sometimes, while working with records, we can have a problem in which we need to average all the columns of a container of lists which are tuples. This kind of application is common in web development domain. Let’s discuss certain ways in which this task can be performed.
Method #1 : Using sum() + list comprehension + zip()
This task can be performed using combination of above functions. In this, we cumulate the like index elements, i.e columns using zip(), and then iterate through them using list comprehension and perform summation using sum(). We divide the each result with No of rows for average computation.
Python3
# Python3 code to demonstrate working of
# Column Mean in tuple list
# using list comprehension + sum() + zip()
# initialize list
test_list = [(1, 2, 3), (6, 7, 6), (1, 6, 8)]
# printing original list
print("The original list : " + str(test_list))
# Column Mean in tuple list
# using list comprehension + sum() + zip()
res = [sum(ele) / len(test_list) for ele in zip(*test_list)]
# printing result
print("The Cumulative column mean is : " + str(res))
OutputThe original list : [(1, 2, 3), (6, 7, 6), (1, 6, 8)]
The Cumulative column mean is : [2.6666666666666665, 5.0, 5.666666666666667]
Time complexity: O(n), where n is the total number of elements in the input list of tuples.
Auxiliary space: O(m), where m is the number of columns in the input list of tuples.
Method #2 : Using zip() + map() + sum()
This method is similar to the above method. In this, the task performed by list comprehension is performed by map(), which extends the summation of columns to zipped elements. We divide the each result with No of rows for average computation.
Python3
# Python3 code to demonstrate working of
# Column Mean in tuple list
# using zip() + map() + sum()
def avg(list):
return sum(list)/len(list)
# initialize list
test_list = [(1, 2, 3), (6, 7, 6), (1, 6, 8)]
# printing original list
print("The original list : " + str(test_list))
# Column Mean in tuple list
# using zip() + map() + sum()
res = list(map(avg, zip(*test_list)))
# printing result
print("The Cumulative column mean is : " + str(res))
OutputThe original list : [(1, 2, 3), (6, 7, 6), (1, 6, 8)]
The Cumulative column mean is : [2.6666666666666665, 5.0, 5.666666666666667]
Time complexity: O(n), where n is the total number of elements in the input list of tuples.
Auxiliary space: O(m), where m is the number of columns in the input list of tuples.
Approach 3: Using numpy library
We can use numpy library to calculate mean of columns in the list of tuples.
Python3
import numpy as np
#initialize list
test_list = [(1, 2, 3), (6, 7, 6), (1, 6, 8)]
#printing original list
print("The original list : " + str(test_list))
#Column Mean in tuple list using numpy
res = np.mean(test_list, axis=0)
#printing result
print("The Cumulative column mean is : " + str(res))
Output:
The original list : [(1, 2, 3), (6, 7, 6), (1, 6, 8)]
The Cumulative column mean is : [2.66666667 5. 5.66666667]
Time Complexity: O(n), where n is the number of elements in the list.
Auxiliary Space: O(n), numpy uses additional memory for computation.
Approach 4 : Using statistics.mean()
Python3
# Python3 code to demonstrate working of
# Column Mean in tuple list
# initialize list
test_list = [(1, 2, 3), (6, 7, 6), (1, 6, 8)]
# printing original list
print("The original list : " + str(test_list))
# Column Mean in tuple list
res=[]
for i in range(0,len(test_list)):
x=[]
for j in range(0,len(test_list[i])):
x.append(test_list[j][i])
import statistics
y=statistics.mean(x)
res.append(y)
# printing result
print("The Cumulative column mean is : " + str(res))
OutputThe original list : [(1, 2, 3), (6, 7, 6), (1, 6, 8)]
The Cumulative column mean is : [2.6666666666666665, 5, 5.666666666666667]
Time Complexity : O(N*N)
Auxiliary Space : O(N)
Similar Reads
Python - Kth Index Tuple List Mean Sometimes, while working with Python tuple, we can have a problem in which we need to compute average of any particular index of tuples in a list. This kind of problem can have application in data domain such as web development. Let's discuss certain ways in which this task can be performed. Input :
5 min read
Mean of Tuple List - Python We are give list of tuples we need to find the mean of each tuples. For example, a = [(1, 2, 3), (4, 5, 6), (7, 8, 9)] we need to find mean of each tuples so that output should be (4.0, 5.0, 6.0).Using sum() and len()We can find the mean of a tuple list by summing corresponding elements using sum()
2 min read
Python | Convert Lists to column tuples Sometimes, while working with data, we can have a problem in which we need to get alike index elements in a single container. This means the columns of Matrix/Multiple lists need to be converted to list of tuples, each comprising of like index elements. Let's discuss certain ways in which this task
11 min read
Find Median of List in Python The median is the middle value in a sorted list. If the list has an odd number of items, it's the center one, if even, it's the average of the two middle values. It's used to find the center of data. Let's look at the different ways to find the median in Python.Using statistics.median() statistics.m
2 min read
Update Each Element in Tuple List - Python The task of updating each element in a tuple list in Python involves adding a specific value to every element within each tuple in a list of tuples. This is commonly needed when adjusting numerical data stored in a structured format like tuples inside lists. For example, given a = [(1, 3, 4), (2, 4,
3 min read
Column Average in Record List - Python Given a list of records where each record contains multiple fields, the task is to compute the average of a specific column. Each record is represented as a dictionary or a list, and the goal is to extract values from the chosen column and calculate their average. Letâs explore different methods to
3 min read