Convert Table to double vector

437 vues (au cours des 30 derniers jours)
Frank Oosterveld
Frank Oosterveld le 1 Oct 2020
Good morning
I try to import values from a file, matlab makes a table file from it.
Now I want to use the table values as doubles, such that I can work with it numerically.
I tried
A = table2array(Displacment_u1_u2)
But then I finish up with
A =
1×2 categorical array
-4.5031370E-03 -1.1870213E-01
These values are still not manipulatable.
When I then try
double(A)
I get the values from the 'baskets' they're in,
ans =
1 2
Thus, how do i get the categorical arrays as double values such that I can work with them?

Réponse acceptée

Ameer Hamza
Ameer Hamza le 1 Oct 2020
Modifié(e) : Ameer Hamza le 1 Oct 2020
First, convert to string and then convert to numeric values.
v = categorical([1e-4 1e-6]);
x = arrayfun(@(x) str2double(x), string(v));
  3 commentaires
Ameer Hamza
Ameer Hamza le 1 Oct 2020
I am glad to be of help!
Charlie Haimbaugh
Charlie Haimbaugh le 28 Fév 2022
I have issues with str2double and str2num in term of precision. I am trying to convert string gps coordinates from an imported table to numbers, but it brings precision down to 4 decimals. Is there any way around this?

Connectez-vous pour commenter.

Plus de réponses (1)

Campion Loong
Campion Loong le 9 Oct 2020
Hi Ameer,
If you have R2019a and newer, you can try using readmatrix to directly read the file as numeric:

Catégories

En savoir plus sur Tables dans Help Center et File Exchange

Community Treasure Hunt

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

Start Hunting!

Translated by