Difficulties converting E-001

1 Ansicht (letzte 30 Tage)
Anne
Anne am 4 Jul. 2024
Beantwortet: Walter Roberson am 4 Jul. 2024
Hi,
I'm importing an excel file to Matlab where example 45E-001 is divided into two column so A[1,1]= 45 and B[1,1]=E-001. "A" comes in as a double and "B" as a cell and when I'm trting to use str2double I only get Nan in each row. I would like to be able to do C = A .* B and that C[1,1] = 4.5.
Thank you
  1 Kommentar
Stephen23
Stephen23 am 4 Jul. 2024
@Anne: please upload a sample data file by clicking the paperclip button.

Melden Sie sich an, um zu kommentieren.

Antworten (2)

Andreas Goser
Andreas Goser am 4 Jul. 2024
I am a big fan of giving interactive importing a try. Try the import tool. One of the best functionalities is you can generate a function from that so you can repeat this interactive importing. In your case, you will likely need a few lines of postprocessing you can simply add to the auto-generated function.

Walter Roberson
Walter Roberson am 4 Jul. 2024
Insert a leading '1' before each of the exponentials, and then multiply the pairs together.
format long g
T = table([45; 17], {'E-001'; 'E+002'});
result = T.Var1 .* str2double(insertBefore(T.Var2, 1, '1'))
result = 2x1
1.0e+00 * 4.5 1700
<mw-icon class=""></mw-icon>
<mw-icon class=""></mw-icon>

Kategorien

Mehr zu Data Import from MATLAB finden Sie in Help Center und File Exchange

Community Treasure Hunt

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

Start Hunting!

Translated by