Extract numbers out of a .mat file that has both characters and numbers

1 view (last 30 days)
Hi, How can I extract numbers out of this .mat file ? Thanks.

Accepted Answer

Azzi Abdelmalek
Azzi Abdelmalek on 17 Jul 2015
Edited: Azzi Abdelmalek on 17 Jul 2015
a=regexp(text,'(?<==)\d+(.)?(\d+)?','match','once')
id=~cellfun(@isempty,a(:,1))
a=str2double(a(id))
  2 Comments
Karthik
Karthik on 17 Jul 2015
Hi, Thanks. The numbers like 2.3*e-4 are being read as 2.3. Not producing the exact numbers. Can you let me know how to fix it.
Stephen23
Stephen23 on 17 Jul 2015
Edited: Stephen23 on 17 Jul 2015
Standard scientific notation using "E" syntax does not use any multiplier symbol, so your source data is non-standard and therefore MATLAB does not recognize it. Therefore you basically have two choices:
  • Change the source data to use standard E-notation.
  • Read the data into MATLAB as strings, and then do some hackery using regexprep before converting to numeric.

Sign in to comment.

More Answers (0)

Categories

Find more on Data Import and Analysis 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!