java 均值插值_插值后的平均矩阵值

我有一个1x24的矩阵 . 在每个单元格内是另一个单列的矩阵 . 但是,列长度从一个矩阵变为另一个矩阵 . 有没有办法平均每个矩阵的第一行,并输出到一个新的矩阵,其中第一个单元格是所有矩阵第一个单元格的平均值?然后第二个和第三个一直到最后?

到目前为止,这是我的脚本 . 你可以看到我创建了一个矩阵 . 现在我想平均它们(在我插入它们之后) .

close all

clear

clc

k = cell(1,24);

for k=1:24

data{k} = xlsread('C:\data.xlsx',['PKA', num2str(k)]);

end

for i=1:24

xfinal{i}=data{1,i}(end,1);

xi{i}=0:0.001:xfinal{i};

xi{i}=transpose(xi{i});

x{i}=data{1,i}(:,1);

y{i}=data{1,i}(:,4);

yi{i} = interp1(x{i},y{i},xi{i});

xf{i}=xi{i};

xf{i}=(1:10001);

yi{i} = interp1(x{i},y{i},xi{i});

yf{i}=yi{i};

yf{i}=(1:10001);

end

如果我点击yi变量,我会看到一行 . 在每个单元格中,还有另一个矩阵 . 第一个矩阵是10014x1,第二个矩阵是10084x1 . 我只关心前10,001个元素,尽管矩阵的长度不同 . 我只想从每个矩阵平均前10,000个元素 . 因此,行1从每个矩阵等平均,第2行,等等,都在10001x1的单个矩阵中

编辑:代码使用rayreng

close all

clear

clc

k = cell(1,24);

for k=1:24

data{k} = xlsread('C:data.xlsx',['PKA', num2str(k)]);

end

for i=1:24

xfinal{i}=data{1,i}(end,1);

xi{i}=0:0.001:xfinal{i};

xi{i}=transpose(xi{i});

x{i}=data{1,i}(:,1);

y{i}=data{1,i}(:,4);

yi{i} = interp1(x{i},y{i},xi{i});

end

Y = zeros(10001, numel(data));

for ii = 1 : numel(data)

Y(:, ii) = yi{ii}(1 : 10001);

end

Y2 = mean(Y, 2);

Y3 = std(Y2, [], 2); errorbar(0 : 0.1 : 10, Y2(1: 100 : 10001), Y3(1 : 100 : 10001));

grid on

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值