Converting numbers into logicals

7 visualizaciones (últimos 30 días)
Cside
Cside el 24 de Feb. de 2020
Editada: Stephen23 el 24 de Feb. de 2020
Hi, I would need to convert matrix A into a 120x9 logical array (B). A is a 120x1 cell, and each row contains numbers 1-9 (number of numbers vary). So for example, if row 1 is [3; 5; 6;8], I would like B to reflect [0 0 1 0 1 1 0 1 0] in the first row. How may I code for this?
Thank you, appreciate any help! :)

Respuesta aceptada

Stephen23
Stephen23 el 24 de Feb. de 2020
Editada: Stephen23 el 24 de Feb. de 2020
>> A = {[3;5;6;8],[2,3,5]}; % fake data
>> B = cell2mat(cellfun(@(v)ismember(1:9,v),A(:),'UniformOutput',false))
B =
0 0 1 0 1 1 0 1 0
0 1 1 0 1 0 0 0 0
  1 comentario
Cside
Cside el 24 de Feb. de 2020
thank you stephen, worked beautifully!

Iniciar sesión para comentar.

Más respuestas (0)

Categorías

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

Community Treasure Hunt

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

Start Hunting!

Translated by