Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/python/359.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
在python中对数组中的特定值求和_Python_Arrays_Sum_Range_Conditional - Fatal编程技术网

在python中对数组中的特定值求和

在python中对数组中的特定值求和,python,arrays,sum,range,conditional,Python,Arrays,Sum,Range,Conditional,我正在尝试使用已添加到数组中的值执行操作 步骤1: 使用xlrd库加载xls文件并创建数组。 这是代码 import xlrd datafile = "data.xls" workbook = xlrd.open_workbook(datafile) sheet = workbook.sheet_by_index(0) data = [[sheet.cell_value(r, col) for col in range(sheet.ncols)]

我正在尝试使用已添加到数组中的值执行操作

步骤1:

使用xlrd库加载xls文件并创建数组。

这是代码

import xlrd

datafile = "data.xls"
workbook = xlrd.open_workbook(datafile)
sheet = workbook.sheet_by_index(0)

data = [[sheet.cell_value(r, col) 
            for col in range(sheet.ncols)] 
                for r in range(sheet.nrows)]
我想对一列中的所有值求和
打印(数据[1][1])
打印(数据[2][1])
打印(数据[3][1])
打印(数据[4][1])
打印(数据[5][1])

一路求和到I(数据[I][1])

就像对同一列的所有行求和一样


我曾尝试过求和数据[1],但这会对同一行的所有值进行求和(如值的水平求和…),我正在尝试进行垂直求和)

您可以使用numpy的
np.sum()
沿矩阵轴或向下求和,生成一个求和向量,如下所示:

>>> import numpy as np
>>> data = [ [1,2],[3,4],[5,6] ]

>>> np.sum(data,0)

array([ 9, 12]) # Summing down the matrix (axis 0)

>>> np.sum(data,1)

array([ 3,  7, 11]) # Summing along the matrix (axis 1)

谢谢你抽出时间。 @C.B 我有一个语法错误。 @斯塔克,谢谢,这正是我想要的。 然而,我找到了另一种方法

导入xlrd。 '打印(表列值(1,开始行x=1,结束行x=100))'

>>> import numpy as np
>>> data = [ [1,2],[3,4],[5,6] ]

>>> np.sum(data,0)

array([ 9, 12]) # Summing down the matrix (axis 0)

>>> np.sum(data,1)

array([ 3,  7, 11]) # Summing along the matrix (axis 1)