Borrar filtros
Borrar filtros

I have a 720x20 matrix how can i subtract 1x20 matrix from it?

1 visualización (últimos 30 días)
clc
clear
signal_factor=10;
format long
folder='E:\Pressure split';
filetype='*.xlsx';
f=fullfile(folder,filetype);
d=dir(f);
for k=1:numel(d);
data{k}=xlsread(fullfile(folder,d(k).name));
end
data=cell2mat(data);
A=data(:,1);
A=A(80:end,1);
n = 720;
m = numel(A);
out = reshape([A(:);nan(mod(-m,n),1)],n,[]);
out=out*signal_factor;
min=min(out);
This is my code, it generates 720x20 matrix and the min also generates 1x20 matix what i want is to subtract first value of min from out (subtract a constant value from all the 720 values) and so on.
  4 comentarios
PRUDHVI RAJU
PRUDHVI RAJU el 2 de Sept. de 2016
min=repmat(min,720,1); % 720 rows same 'min' row matrix
sub=out-min;
Azzi Abdelmalek
Azzi Abdelmalek el 2 de Sept. de 2016
Don't use the built-in function min as a variable

Iniciar sesión para comentar.

Respuesta aceptada

Adam
Adam el 2 de Sept. de 2016
Editada: Adam el 2 de Sept. de 2016
res = bsxfun( @minus, out, minVal);
should work if I understand correctly what you are asking.
Don't ever call a variable 'min' though, especially not when you are also using the function 'min' which you hide after your variable gets created (but really just never do it, irrespective of whether you are using the 'min' function in your code or not).

Más respuestas (0)

Categorías

Más información sobre Logical en Help Center y File Exchange.

Etiquetas

Community Treasure Hunt

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

Start Hunting!

Translated by