So I have a huge table (672 elements) and each cell has a string that involves a number and some letters at the end with a variable space between them, but I want to remove the letters and convert the string number to an actual number. For example:
cell 1: "1.32e8 Cis"
cell 2: "8.47e-2 tOE"
cell 3: "4.55e8 pov"
And so on....for 672 cells.
What I want is to convert this to
1.32e8
8.47e-2
4.55e8

1 Kommentar

Image Analyst
Image Analyst am 17 Nov. 2021
Please be clear.
Is your data is in a table variable, or a cell array variable?
There might be different ways to do it depending on what type of variable it is. Can you attach it in a .mat file?

Melden Sie sich an, um zu kommentieren.

 Akzeptierte Antwort

Image Analyst
Image Analyst am 17 Nov. 2021

0 Stimmen

For a cell array, try this:
ca = {"1.32e8 Cis"
"8.47e-2 tOE"
"4.55e8 pov"}
ca = 3×1 cell array
{["1.32e8 Cis" ]} {["8.47e-2 tOE"]} {["4.55e8 pov" ]}
for k = 1 : numel(ca)
ca{k} = sscanf(ca{k}, '%f');
end
ca % Show again in the command window
ca = 3×1 cell array
{[132000000]} {[ 0.0847]} {[455000000]}

Weitere Antworten (0)

Kategorien

Mehr zu Characters and Strings finden Sie in Hilfe-Center und File Exchange

Produkte

Version

R2020b

Tags

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!

Translated by