Warning: file_get_contents(/data/phpspider/zhask/data//catemap/7/python-2.7/5.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_Python 2.7_Matrix - Fatal编程技术网

Python 矩阵特定部分的平均值

Python 矩阵特定部分的平均值,python,python-2.7,matrix,Python,Python 2.7,Matrix,我必须计算矩阵这一特定部分的平均值,这是用随机数生成的,我目前的工作是: import random as rd import numpy as np matriz= np.zeros([12, 12]) for i in range(0,12): for j in range(0,12): matriz[i,j]=rd.randint(0,10) 您的问题是尝试适合算法。矩阵的“标记”部分显然有一个结构,因此您的问题在于尝试查看/识别该结构,以适应它 我看到的是

我必须计算矩阵这一特定部分的平均值,这是用随机数生成的,我目前的工作是:

import random as rd
import numpy as np

matriz= np.zeros([12, 12])

for i in range(0,12):
    for j in range(0,12):
        matriz[i,j]=rd.randint(0,10) 

您的问题是尝试适合算法。矩阵的“标记”部分显然有一个结构,因此您的问题在于尝试查看/识别该结构,以适应它

我看到的是一种模式:从第0行开始,从1到n-1取列,然后在第1行中取列2到n-2,以此类推。因此基本上,您是对
范围内(rowIndex+1,len(columns)-(rowIndex+1))中每行的坐标求和。

可能有一些更优雅的方法来实现这一点,但我认为这会奏效:

import random as rd
import numpy as np

l, w = 12, 12   # matrix has dimensions l=12, w=12
matriz= np.zeros([l, w])

for i in range(l):
    for j in range(w):
        matriz[i,j]=rd.randint(0,10) 

vals = []

for i in range(int(l/2)):     # iterate through rows 0 to 4
    for j in range(i+1, w-(i+1)):
        vals.append(matrix[i,j])

# get the mean:
print 'mean is {}'.format(sum(vals)/len(vals))

请注意,这可能不适用于非方形矩阵。

看起来您还没有尝试过任何东西。你尝试了什么,特别是什么阻碍了你?错误?(如果是,请张贴跟踪和代码)。输出与您期望的不匹配?(如果是,请显示示例数据和输出等)我不知道如何准确计算这部分的平均值,这就是为什么我坚持这部分是如何指定的?给我们举个例子,你能试试蛮力迭代吗,把每一个Vlaue附加到一个list对象,然后从这个list中进行avg?