早教吧作业答案频道 -->其他-->
matlab 稀疏矩阵插值为题现有(10×10)矩阵230002200002900000000000025000000000000250000250000000000000000000000000000000028025002602800000000033026000
题目详情
matlab 稀疏矩阵插值为题
现有(10×10)矩阵
2300022000029
0000000000
00250000000
00000250000
25000000000
0000000000
0000000000
0002802500260
28000000000
3302600000025
如果用正常的二维插(interp2)方法,0的位置还是0,这不是我希望得到的结果.
能否仅利用矩阵中已有的数据点(非零点)进行插值,得到一个新的平滑非稀疏矩阵.
现有(10×10)矩阵
2300022000029
0000000000
00250000000
00000250000
25000000000
0000000000
0000000000
0002802500260
28000000000
3302600000025
如果用正常的二维插(interp2)方法,0的位置还是0,这不是我希望得到的结果.
能否仅利用矩阵中已有的数据点(非零点)进行插值,得到一个新的平滑非稀疏矩阵.
▼优质解答
答案和解析
A = [23, 0, 0, 0, 22, 0, 0, 0, 0, 29; ...
0, 0, 0, 0, 0, 0, 0, 0, 0, 0; ...
0, 0, 25, 0, 0, 0, 0, 0, 0, 0; ...
0, 0, 0, 0, 0, 25, 0, 0, 0, 0; ...
25, 0, 0, 0, 0, 0, 0, 0, 0, 0; ...
0, 0, 0, 0, 0, 0, 0, 0, 0, 0; ...
0, 0, 0, 0, 0, 0, 0, 0, 0, 0; ...
0, 0, 0, 28, 0, 25, 0, 0, 26, 0; ...
28, 0, 0, 0, 0, 0, 0, 0, 0, 0; ...
33, 0, 26, 0, 0, 0, 0, 0, 0, 25];
[X,Y,Z]=find(A);
[x,y]=find(A==0);
z=griddata(X,Y,Z,x,y,'cubic');
n=length(x);
for i=1:n, A(x(i),y(i))=z(i); end
0, 0, 0, 0, 0, 0, 0, 0, 0, 0; ...
0, 0, 25, 0, 0, 0, 0, 0, 0, 0; ...
0, 0, 0, 0, 0, 25, 0, 0, 0, 0; ...
25, 0, 0, 0, 0, 0, 0, 0, 0, 0; ...
0, 0, 0, 0, 0, 0, 0, 0, 0, 0; ...
0, 0, 0, 0, 0, 0, 0, 0, 0, 0; ...
0, 0, 0, 28, 0, 25, 0, 0, 26, 0; ...
28, 0, 0, 0, 0, 0, 0, 0, 0, 0; ...
33, 0, 26, 0, 0, 0, 0, 0, 0, 25];
[X,Y,Z]=find(A);
[x,y]=find(A==0);
z=griddata(X,Y,Z,x,y,'cubic');
n=length(x);
for i=1:n, A(x(i),y(i))=z(i); end
看了 matlab 稀疏矩阵插值为...的网友还看了以下:
5×0.7=0.43×5=3.6÷0.9-4=240÷37≈3.6-0.36=8.1-2.2=0. 2020-04-07 …
直接写出得数0.9+0.4=1.8+0.9=1-0.3=1.5-0.7=3-2.6=5.3+4.6 2020-04-07 …
7.24*0.6+5/3*2.41-0.65*60%[1-(4又3/1-1又4/3)*2除2又2/ 2020-04-07 …
看谁算行又对又快0.45÷0.05=4.3×0.5=1-0.08=600×0.01=0.65×1. 2020-05-17 …
0,π/6,π/4,π/3,π/3,π/2,2/3π,3/4π,5/6π,π,7/6π的正弦余弦值 2020-06-06 …
直接写得数.4.5×100=9.2+3.6=11.6-3.2=1-0.15=7.5÷100=3.0 2020-07-16 …
计算:5+9=143+9=126+8=144+7=114+5=96+9=1515-10=58+8= 2020-07-18 …
直接填写得数:234+299=7.8+0.32=5.6+3.75+6.25=15.2+89-5.2 2020-07-19 …
直接写出得数6.3÷9=4.2÷2.1=8-2.6=4×1.5=0.32+0.8=1.7+0.25= 2020-11-19 …
口算我最棒250÷5=420÷6=140÷7=96÷3=400÷8=930÷3=0÷8=216÷3= 2020-11-24 …