Filter löschen
Filter löschen

mean value of array after every n columns

3 Ansichten (letzte 30 Tage)
Fatma Nur Disci
Fatma Nur Disci am 8 Dez. 2020
Bearbeitet: Fatma Nur Disci am 16 Dez. 2020
Hi,
I have 1x131072 dataPower array read from matfile. And want to average each every 128 columns. What's the problem here ?
a = matfile('x');
b=a.dataPower; %dataPower array
bround=round(b(1:131072) % array include double values like 297.3865 and just try to cast to 297 for example.
for i = 1024
k(i) = mean(bround((i-1)*128+1:i*128),2)
end
And want to get 1024 value. But error : subscript indices must either be real positive integers or logicials.
Thanks.

Akzeptierte Antwort

Ameer Hamza
Ameer Hamza am 8 Dez. 2020
Here is a loop-free option
a = matfile('x');
b=a.dataPower; %dataPower array
bround=round(b(1:131072));
k = mean(reshape(bround, 128, []))
  1 Kommentar
Fatma Nur Disci
Fatma Nur Disci am 16 Dez. 2020
Bearbeitet: Fatma Nur Disci am 16 Dez. 2020
Hi , I thought that I was deleting this question bcs after asked it, I solved my problem, but it still appears. Thanks for your help, anyway.

Melden Sie sich an, um zu kommentieren.

Weitere Antworten (0)

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!

Translated by