Tengo 2 columnas de datos importados desde el uso de textscan. Los datos se parece a esto, donde T es undetect y D se detectarordenar columnas en Matlab
mydata=
.51 U
.57 D
.48 U
.47 D
my data = [4x1 double] [4x1 char]
Quiero ordenar los datos de la primera columna y lo que los datos se vería así
.47 D
.48 U
.51 U
.57 D
Me gustaría conservar la estructura de la celda para que el siguiente comando para asignar valor lógico siga siendo verdadero:
c = zeros(size(mydata,1),1); % preallocate empty matrix
c = mydata{2} == 'U';
for i = 1:size(mydata,1)
curValue = mydata{i,2};
data{i,3} = ~isempty(curValue) && ischar(curValue) && strcmp(curValue ,'U');
end
He leído sobre sortrows pero la función se utiliza para ordenar la matriz que contiene solo números.
¿Alguien tiene una solución para ordenar matrices con una combinación de números y caracteres.
Oh, eso es mejor que el mío. :) Puedes hacerlo incluso simper reemplazando 'cell2mat (mydata (:, 1)' por 'mydata {1}'. – 3lectrologos
@ 3lectrologos: Encontré mi error y lo corrigí antes de ver tu respuesta y comentario. De alguna manera me perdí el estructura de datos en la pregunta. – yuk
Gracias 3lectrologos y yuk. ¡Ambos códigos funcionaron! – user1009166