how to convert a column of cells into string?

4 visualizaciones (últimos 30 días)
Amr Hashem
Amr Hashem el 19 de Mayo de 2015
Editada: per isakson el 20 de Mayo de 2015
when i try my code ( search for a word in a cells of column), i use :
% search for "battery" in column 52th
B=~cellfun('isempty',regexp(alldata(:,52),'BATTERY'))
i got an error : All cells must be strings.
B=~cellfun('isempty',regexp(alldata(:,52),'BATTERY'))
how i can solve this?
note: the column contain a texts but some cells is empty or contain NaN

Respuesta aceptada

per isakson
per isakson el 19 de Mayo de 2015
Editada: per isakson el 19 de Mayo de 2015
NaN is double
>> class( nan )
ans =
double
replace Nan by '' (empty string)
>> alldata = {'abc', nan, 'def'}
alldata =
'abc' [NaN] 'def'
>> alldata{ not( cellfun( @ischar, alldata ) ) } = '';
>> alldata
alldata =
'abc' '' 'def'
  2 comentarios
Amr Hashem
Amr Hashem el 19 de Mayo de 2015
how i can do a for loop on a column of cells which some are not string to make them string
per isakson
per isakson el 20 de Mayo de 2015
Editada: per isakson el 20 de Mayo de 2015
>> alldata{ not( cellfun( @ischar, alldata ) ) } = '';
does that. Why use a loop?
any_string_value = 'abc';
for jj = 1 : length( alldata )
if not( ischar( alldata{jj} ) )
alldata{jj} = any_string_value;
end
end

Iniciar sesión para comentar.

Más respuestas (0)

Categorías

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