How to Save multiple results into one array

36 visualizaciones (últimos 30 días)
Hans123
Hans123 el 11 de Jun. de 2020
Editada: madhan ravi el 11 de Jun. de 2020
This seems simple, but I can't wrap my head around it
I am trying to save 2 variables that are output from the mink, where k=2, function into a single array
the results should be consecutive and be in a horizontal array, such that - for the first iteration the output was 4 and 6 and the second iteration the outputs are 8 and 9
so the array should be xval = [4,6,7,8..]
Below is the code I was working with however it did not work, any help is appreciated
xvalue=zeros(2*length(x),1);
for i=1:length(x)
xvalue(i)=mink(abs(Lx-x(i)),2); %
end

Respuesta aceptada

Stephen23
Stephen23 el 11 de Jun. de 2020
n = numel(x);
xvalue = zeros(2,n);
for ii = 1:n
xvalue(:,ii) = mink(abs(Lx-x(ii)),2);
end
xvalue = xvalue(:).'

Más respuestas (1)

madhan ravi
madhan ravi el 11 de Jun. de 2020
Editada: madhan ravi el 11 de Jun. de 2020
xvalue = cell(numel(x),1);
for ii = 1:numel(x)
xvalue(ii) = mink(abs(Lx-x(ii)),2);
end
celldisp(xvalue)
cat(2,xvalue{:})
  2 comentarios
Hans123
Hans123 el 11 de Jun. de 2020
thanks for the input, madhan
I get an error that I have pasted below, could you break down this process - also is there a method that circumvents the use of cells
Conversion to cell from double is not possible.
Error in load_point_charges (line 65)
xvalue(ii) = mink(abs(Lx-x(ii)),2);
madhan ravi
madhan ravi el 11 de Jun. de 2020
Editada: madhan ravi el 11 de Jun. de 2020
xvalue{ii} % had to use {}

Iniciar sesión para comentar.

Categorías

Más información sobre Matrix Indexing 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