Python——数据元组列和
Python 具有丰富且大量的各种函数和库,使得其在数据分析中十分流行。有时,我们的分析可能需要对一组数据元组的某个列中的值进行求和操作。所以,本程序会将一系列数据元组中同一位置或同一列的所有值进行加和。
以下列举几种实现方法。
使用 for 循环和 zip
使用 for 循环遍历每一项,然后使用 zip 函数收集每一列中的值。随后,我们使用求和函数并最终将结果作为新的数据元组。
示例
data = [[(3, 92), (21, 4), (15, 6)],[(25, 62), (12, 7), (15, 7)]] print("The list of tuples: " + str(data)) # using list comprehension + zip() result = [tuple(sum(m) for m in zip(*n)) for n in zip(*data)] print(" Column summation of tuples: " + str(result))
输出
运行以上代码将产生以下结果
The list of tuples: [[(3, 92), (21, 4), (15, 6)], [(25, 62), (12, 7), (15, 7)]] Column summation of tuples: [(28, 154), (33, 11), (30, 13)]
使用映射和 zip
我们可以使用映射函数而非 for 循环实现相同的结果。
示例
data = [[(3, 92), (21, 4), (15, 6)],[(25, 62), (12, 7), (15, 7)]] print("The list of tuple values: " + str(data)) # using zip() + map() result = [tuple(map(sum, zip(*n))) for n in zip(*data)] print(" Column summation of tuples: " + str(result))
输出
运行以上代码将产生以下结果
The list of tuple values: [[(3, 92), (21, 4), (15, 6)], [(25, 62), (12, 7), (15, 7)]] Column summation of tuples: [(28, 154), (33, 11), (30, 13)]
广告