【发布时间】:2021-06-16 02:40:03
【问题描述】:
在以下稀疏矩阵中:
A=[1 1 1 3];
C = sparse(A',1:length(A),ones(length(A),1),4,4);
C =
(1,1) 1
(1,2) 1
(1,3) 1
(3,4) 1
>>full(C)
ans =
1 1 1 0
0 0 0 0
0 0 0 1
0 0 0 0
如何计算每行中非零元素的平均值?我无法在这些稀疏矩阵上使用 matlab 的内置均值函数。 我找到了this similar question,我可以将它应用到我的问题中
[row, ~, v] = find(C);
K>> rowmean = accumarray(row, v, [], @mean);
K>> rowmean
rowmean =
1
0
1
但是,我希望最后一行的值为零,而不是从答案中删除这一行。
【问题讨论】:
标签: arrays matlab matrix statistics sparse-matrix