Issues converting a Cell to a numerical array
2 views (last 30 days)
Show older comments
Hi, I am trying to get the sum of all the prime unique nummbers in cell. I am having trouble converting the cell to a numerical array so that I can use the sum and prime functions on my inputs. The inputs are normally formated as ({1, 3, 7, 7, 'a'}) and matlab ether does not recognize these values as nummbers or can not convert a cell that has both nummbers and letters into a numerical array. TO be specific I am looking for a way to remove the letter from the cell and covert the rest of the cell to an array that I can use mathmatical operations on.
0 Comments
Answers (1)
the cyclist
on 25 Feb 2021
Edited: the cyclist
on 25 Feb 2021
Here is one way that may work for you:
C = {1, 3, 7, 7, 'a'};
N = cell2mat(C(cellfun(@isnumeric,C)))
4 Comments
the cyclist
on 25 Feb 2021
C = {1, 3, 7, 7, 'a'};
N = cell2mat(C(cellfun(@isnumeric,C)));
primeN = N(isprime(N))
lists only the prime numbers from C. You mentioned needing unique values somehow, so you might also need the unique function.
See Also
Categories
Find more on Logical 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!