Using a column of cells as variable names in a table

20 vues (au cours des 30 derniers jours)
Prasenjit Dewanjee
Prasenjit Dewanjee le 18 Fév 2023
Commenté : Stephen23 le 14 Mar 2023
Hi!
I have a table that contains 2 columns each having 28 rows. The first column contains cells of strings, and the second one contains numbers in cell format. I want to use the individual strings from column 1 as the varible names for a table and then assign the numbers from 2nd column to those variables. How do I do that? The file is attached.
Any help will be appreciated.

Réponses (2)

Sulaymon Eshkabilov
Sulaymon Eshkabilov le 18 Fév 2023
Here is how to get this assignment done:
T = readtable('Properties.xlsx');
T2 = table(T.Var2, 'RowNames',T.Var1)
T2 = 28×1 table
Var1 _______ a1 48 b1 96 t1 0.25 E_steel 3e+07 v_steel 0.33 P1 1 P2 10000 a2 1 b2 1.5 t2 0.01 E_al 6.9e+10 v_al 0.3 Sinusoidal 1 Uniform 2 Hydrostatic 3 Patch 4
T2 = rows2vars(T2)
T2 = 1×29 table
OriginalVariableNames a1 b1 t1 E_steel v_steel P1 P2 a2 b2 t2 E_al v_al Sinusoidal Uniform Hydrostatic Patch m_max n_nax x_sigmax y_sigmax x_tauxy y_tauxy x_tauxz y_tauxz x_tauyz y_tauyz x_sigmaz z_sigmaz _____________________ __ __ ____ _______ _______ __ _____ __ ___ ____ _______ ____ __________ _______ ___________ _____ _____ _____ ________ ________ _______ _______ _______ _______ _______ _______ ________ ________ {'Var1'} 48 96 0.25 3e+07 0.33 1 10000 1 1.5 0.01 6.9e+10 0.3 1 2 3 4 23 23 NaN NaN NaN NaN NaN NaN NaN NaN NaN NaN
T2.a1
ans = 48
T2.b1
ans = 96
T2.t1
ans = 0.2500
T2.E_steel
ans = 30000000
...
  2 commentaires
Prasenjit Dewanjee
Prasenjit Dewanjee le 18 Fév 2023
Modifié(e) : Prasenjit Dewanjee le 18 Fév 2023
Thank you so much!! Easy and effective!
Sulaymon Eshkabilov
Sulaymon Eshkabilov le 18 Fév 2023
Modifié(e) : Sulaymon Eshkabilov le 18 Fév 2023
Most welcome.

Connectez-vous pour commenter.


Seth Furman
Seth Furman le 14 Mar 2023
Modifié(e) : Seth Furman le 14 Mar 2023
See unstack.
t1 = readtable("Properties.xlsx")
t1 = 28×2 table
Var1 Var2 _______________ _______ {'a1' } 48 {'b1' } 96 {'t1' } 0.25 {'E_steel' } 3e+07 {'v_steel' } 0.33 {'P1' } 1 {'P2' } 10000 {'a2' } 1 {'b2' } 1.5 {'t2' } 0.01 {'E_al' } 6.9e+10 {'v_al' } 0.3 {'Sinusoidal' } 1 {'Uniform' } 2 {'Hydrostatic'} 3 {'Patch' } 4
t2 = unstack(t1,"Var2","Var1")
t2 = 1×28 table
E_al E_steel Hydrostatic P1 P2 Patch Sinusoidal Uniform a1 a2 b1 b2 m_max n_nax t1 t2 v_al v_steel x_sigmax x_sigmaz x_tauxy x_tauxz x_tauyz y_sigmax y_tauxy y_tauxz y_tauyz z_sigmaz _______ _______ ___________ __ _____ _____ __________ _______ __ __ __ ___ _____ _____ ____ ____ ____ _______ ________ ________ _______ _______ _______ ________ _______ _______ _______ ________ 6.9e+10 3e+07 3 1 10000 4 1 2 48 1 96 1.5 23 23 0.25 0.01 0.3 0.33 NaN NaN NaN NaN NaN NaN NaN NaN NaN NaN

Catégories

En savoir plus sur Logical dans Help Center et File Exchange

Produits


Version

R2022b

Community Treasure Hunt

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

Start Hunting!

Translated by