converting specific string variables to double
    5 views (last 30 days)
  
       Show older comments
    
Dear all,
I have the following matrix
 A={'name'
   'afsaf'
   'sfsfs'
   '0'
 'rpytui'
'0'
'0'
'0'
'dfgl'
'trd'
};
I want to convert the zeros which are string variables to numeric variables; that is
 A={'name'
   'afsaf'
   'sfsfs'
   [0]
 'rpytui'
[0]
[0]
[0]
'dfgl'
'trd'
};
Is there a way of doing that?
Thanks in advance!
0 Comments
Accepted Answer
More Answers (3)
  Jan
      
      
 on 17 Jun 2013
        A(strcmp(A, '0')) = {0}
1 Comment
  Azzi Abdelmalek
      
      
 on 17 Jun 2013
				This is faster
A=repmat(A,100000,1);
tic
A(ismember(A,'0'))={0};
toc
tic
A(strcmp(A, '0')) = {0};
toc
Elapsed time is 0.047910 seconds.
Elapsed time is 0.012593 seconds.
  the cyclist
      
      
 on 15 Jun 2013
        I am quite sure there is a simpler way, but one way is
A(cellfun(@(x)isequal(x,'0'),A))={0};
0 Comments
  Azzi Abdelmalek
      
      
 on 15 Jun 2013
        
      Edited: Azzi Abdelmalek
      
      
 on 15 Jun 2013
  
      A(~cellfun('isempty',strfind(A,'0')))={0}
0 Comments
See Also
Categories
				Find more on File Operations in Help Center and File Exchange
			
	Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!


