Table.Prop​erties.Var​iableNames will add ... to long Variable Names

6 vues (au cours des 30 derniers jours)
Alexander Szambor
Alexander Szambor le 28 Fév 2025
I want to read out the Variable names of a table i imported from excel with readtable.
Table.Properties.VariableNames will add 3 dots "..." to long Variable Names, thereby shortening the actual name in the cell array, and making them useless to index into said table column.
This might have to do with the way Tables are displayed when viewing them in the workspace.
Gave something along the lines of:
1×13 cell array
Columns 1 through 10
{'components_pos_'} {'name'} {'thickness__s__i…'} {'thermal_conduc_…'} {'heat_capac_c_in…'} {'density_in_kg_m_'} {'V_ignoreThisOne'} {'solar_absorp'} {'ir_emissivity'} {'g_value'}
Columns 11 through 13
{'shading_g_total'} {'shading_max_irr'} {'a_conv'}
Now for me personally i just need to fix this once or twice and thats no Problem, but it feels unintended. Is it a Bug?
There is also Table.Properties.VariableDESCRIPTIONs which puts out the same cell Array, now for Description it makes sense that it might put in the dots ...

Réponse acceptée

Steven Lord
Steven Lord le 28 Fév 2025
Is that an artifact of how the cell array is displayed in the Workspace (which I suspect is the case) or how the data is stored in the cell array?
name = repmat('a':'z', 1, 2);
t = table(1, 2, VariableNames = {[name, '1'], [name , '2']})
t = 1x2 table
abcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyz1 abcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyz2 _____________________________________________________ _____________________________________________________ 1 2
N = t.Properties.VariableNames
N = 1x2 cell array
{'abcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyz1'} {'abcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyz2'}
nameOfVariable1 = N{1}
nameOfVariable1 = 'abcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyz1'
If it is just an artifact of the display, I don't consider that to be a bug.
  1 commentaire
Alexander Szambor
Alexander Szambor le 1 Mar 2025
It is an Artifact of how the cell array is displayed in the workspace, it results in three dots being displayed in the command window when not suppressing the output.
You are correct, if i pull out a certain cell value from the array the char is displayed correctly.

Connectez-vous pour commenter.

Plus de réponses (1)

Fangjun Jiang
Fangjun Jiang le 28 Fév 2025
Modifié(e) : Fangjun Jiang le 28 Fév 2025
I think the OP was referring to the three dots in the image in the header row.
It is a display, @Alexander Szambor. If you drag and increase the width of the column in the matrix grid in the workspace view, the full variable name will be shown.
  1 commentaire
Alexander Szambor
Alexander Szambor le 1 Mar 2025
No, i was referring to the values in the cell array. Thank you anyways.

Connectez-vous pour commenter.

Catégories

En savoir plus sur Data Import from MATLAB dans Help Center et File Exchange

Tags

Produits


Version

R2024b

Community Treasure Hunt

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

Start Hunting!

Translated by