for loop to convert cells of column to string

1 visualización (últimos 30 días)
Amr Hashem
Amr Hashem el 19 de Mayo de 2015
Respondida: Amr Hashem el 20 de Mayo de 2015
i have a data which is a column of cells (some string and some douple), i search for some words in it
i use this code
for E=1:R % from 1 : length of columns
B=~cellfun('isempty',regexp(alldata(:,52),'BATTERY')) % search for battrey and return 1 or 0
if (B(E) == 1) % if value of array greater than or equal 1
Defs(j)=E; % save its postion (E,1)
j=j+1;
else % save all arrays didn't have 'battery' separately
not(k)=E;
k=k+1;
end
end
but i get an error
All cells must be strings.
in line B=~cellfun('isempty',regexp(alldata(:,52),'BATTERY'))
how i can run a for loop to convert all cells into double?
i use this
data= ' Nan '
data={};
data{ not( cellfun( @ischar, data ) ) } = '';
but i cant run a for loop... :(
  1 comentario
Amr Hashem
Amr Hashem el 19 de Mayo de 2015
sometimes when i search for a word in a column
with the same code, i got this error Index exceeds matrix dimensions.
B=~cellfun('isempty',regexp(alldata(:,54),'BATTERY'))
it seems that some cells in the column is empty
how i can solve this

Iniciar sesión para comentar.

Respuesta aceptada

Amr Hashem
Amr Hashem el 20 de Mayo de 2015
I found this answer:
[R,C]=size(data);
H=data;
for k = 1:R
if isnan(H{k})
H{k} = '';
end
end
it was answered by Jan Simon
and it works...
thanks for you all... thanks for Jan.

Más respuestas (0)

Categorías

Más información sobre Characters and Strings 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