how to convert table to matrix?
조회 수: 2,910 (최근 30일)
이전 댓글 표시
for minimization process Boolean function by using binary decision diagram.
댓글 수: 0
채택된 답변
Walter Roberson
2024년 11월 13일 0:00
편집: MathWorks Support Team
2024년 11월 13일 6:27
table2array() . Or, if the table is all numeric, you can give the table name and then {:, :} such as mytable{:,:}
댓글 수: 2
Walter Roberson
2018년 2월 7일
편집: Walter Roberson
2018년 2월 7일
The code I posted does that. Table objects are always 2 dimensional in MATLAB and for two dimensions the terms array and matrix are the same thing.
추가 답변 (4개)
MathWorks Support Team
2020년 9월 2일
편집: MathWorks Support Team
2020년 9월 2일
As an alternative, you can convert a table to an array by using the syntax “T{:,:}”, where “T” is the table. This syntax is the equivalent of “table2array”.
All variables in the table must have sizes and data types that allow them to be horizontally concatenated. For example, if all variables in “T” are numeric, then “table2array” returns a numeric array.
댓글 수: 2
Arsalan Aftab Sayed
2020년 12월 16일
I tried both table2array and “T{:,:}” but it changes the values inside the table from 0.7 to 1. Is there a way I can keep the original values, I tried using double datatype but it doesn't work
Walter Roberson
2020년 12월 16일
table2array() converting 0.7 to 1 could happen if the table is mixed data type including at least one integer data type such as uint8 . Please check
unique( varfun(@class, T, 'outputformat', 'cell') )
Sulaymon Eshkabilov
2021년 8월 4일
Another alternative to convert table to matrix is to use a syntax: M=T.Var, e.g.
T = table(magic(5))
M=T.Var1
댓글 수: 6
David Alejandro Ramirez Cajigas
2021년 8월 18일
What can I do if I have N var, with random names, inside a table that imports from excel, this table can vary.
that is, the method of putting T. "name var" is not possible if I have N quantity of varials with N different names
Walter Roberson
2021년 8월 18일
You can use variable indexes if the indexes are constant.
If the variable order is not constant, then you can take T.Properties.VariableNames and extract whatever subset of those you want and sort them in whatever you want. Then you can loop doing dynamic field names.
Example, selecting variables that start with "run"
names = T.Properties.VariableNames;
runvars = sort(names(startsWith(names, 'run')));
nrun = length(runvars);
for varidx = 1 : nrun
thisvarname = runvars{varidx};
thiscontent = T.(thisvarname);
stuff here
end
참고 항목
카테고리
Help Center 및 File Exchange에서 Tables에 대해 자세히 알아보기
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!