Create double workspace variable from Table
조회 수: 10 (최근 30일)
이전 댓글 표시
Hi.
I have a table in my workspace. I would like to create new workspace variable of type - double, with the heading of each table column as the variable name.
For example:
![](https://www.mathworks.com/matlabcentral/answers/uploaded_files/529839/image.jpeg)
Assuming the table is already loaded into my workspace, I would like a script that automatically creates the variables: A, B, C with the data under the respective columns as values; and the type of the created workspace variable should be double.
Note: I want the script such that it reads the variable names A, B, C dynamically, cos these names could vary in the project.
Thanks
댓글 수: 2
Stephen23
2021년 2월 24일
편집: Stephen23
2021년 2월 24일
What is the reason that you cannot access the data directly from within the table?
"I want the script such that it reads the variable names A, B, C dynamically, cos these names could vary in the project."
If the names could vary, then magically defining them as variable names will make it difficult to keep track of them (as well as making your code slow, complex, and inefficient). In contrast, keeping them in the table makes it trivial to know what names have been supplied (and very efficient to process them).
What is the reason that you want to introduce latent bugs into your code for no obvious benefit?
답변 (1개)
Mahesh Taparia
2021년 2월 27일
Hi
You can always access the variable name using the table object. Consider an example below
Height = [71;69;64;67;64];
Weight = [176;163;131;133;119];
T = table(Height,Weight);
tableVar = T.Properties.VariableNames;
The tableVar stores the variable name in a cell array, you can access the value by calling the respective variable from the table object. For example:
>> T.(tableVar{1,1})
ans =
71
69
64
67
64
Hope it will help!
댓글 수: 0
참고 항목
카테고리
Help Center 및 File Exchange에서 Tables에 대해 자세히 알아보기
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!