A=矩阵(c(1,2,3,0,2,2,0,2,3),nrow=3,ncol=3)
[,1] [,2] [,3]
[1,] 1 0 0
[2,] 2 2 2
[3,] 3 2 3
B=矩阵(c(1,2,3,1,4,2,2,1),nrow=3,ncol=3)
[,1] [,2] [,3]
[1,] 1 1 2
[2,] 2 4 2
[3,] 3 2 1
C=A B/(总和差为零)
C=矩阵(c(1,2,3, 1, 3, 2, 2,2 ,2),nrow=3,nco=3)
[,1] [,2] [,3]
[1,] 1 1 2
[2,] 2 3 2
[3,] 3 2 2
我需要对N个矩阵的列表执行此操作(mat_vect[[I]]):
list_mat_vect[[i]] <- assign(paste("a", i, sep = ""), mat_vect[[i]])
求和矩阵并得到平均值
mat_sum_mean = Reduce("+", list_mat_vect) / length(file_list)
这里是所有数字的除法,包括零。我不想那样。
你可以做的
(A+B)/((A!=0) + (B!=0))
为了得到
[,1] [,2] [,3]
[1,] 1 1 2
[2,] 2 3 2
[3,] 3 2 2
这里<代码>!=使用零返回TRUE或FALSE的相等性测试。当我们把这些加起来时,TRUE被视为1,FALSE变成0。
你也可以用矩阵列表来做这件事
list_mat_vect<-list(A,B)
Reduce("+", list_mat_vect) / Reduce("+", lapply(list_mat_vect, function(x) x!=0))
你有一个整数数组。您必须找到子阵列的数量,该数量意味着(这些元素的总和除以这些元素的计数)舍入为零。我已经用O(n^2)时间解决了这个问题,但效率不够。有办法吗?
假设我们有两个矩阵,即和,分别为和。 我们如何才能找到哪些行与行相同(反之亦然)? 优选的输出是矩阵,其行数等于矩阵和之间的标识行,两列,即第一列包含矩阵的行数,第二列包含矩阵的行数。
这是我的代码,它不起作用: 我已经做了一个星期了,还是搞不清楚。我不确定在这里发布是否合适,但欢迎任何形式的帮助。
我想让一个函数包含三个参数 二维数组。(整数数组[行][列]) 整数。(int n) 数组[i][j]的地址。 表示我的函数原型应该像这样 功能说明 > 第一个参数是2D数组,表示要处理的数据。 这里的代表n×n矩阵,是指需要所有元素平均的方阵的维数。 最后一个参数是子矩阵第一个元素的地址。 样本输入 例如,我们取3x3矩阵, 我要计算子矩阵 输出 则函数将返回8.25,即(8+7+9+9)/4。
我试图通过DP找到所有子数组的加权平均值,然后按列排序,找到长度相同的2。但我无法继续下去,我的方法似乎太模糊/太粗暴了。我将非常感谢任何帮助。提前谢了。
在matlab中,我有一个非负数项的矩阵a。见以下一条: 我想找到所有零元素的邻居,除了零元素。这意味着我想在向量v中存储a(1,1),a(2,5),a(3,1),a(3,6),a(4,5)和a(5,1)的邻居,如果这些邻居中的一个是零,那么我就不存储它。 所谓元素(i,j)的邻居,是指离(i,j)远一个元素的元素,即A(i,j+1)、A(i,j-1)、A(i-1,j)、A(i-1,j-1)、A(