Select columns of a table using matching column names
조회 수: 153 (최근 30일)
이전 댓글 표시
Hello everyone!
I'm facing the following problem: I have a cell array containing strings, let's call it "v"
On the other hand I have a huge table , let's call it "T", from which I want to select only the columns that have the column name that corresponds to the names contained in vector "v".
Any kind of help will be appreciated
Thank you
댓글 수: 0
채택된 답변
Voss
2022년 6월 14일
v = {'Var1' 'Var3'}
T = table([1;2;3],[4;5;6],[7;8;9])
% a table of the selected columns of T:
new_T = T(:,v)
% or, the data from the selected columns of T:
new_T_data = T{:,v}
댓글 수: 2
Voss
2022년 6월 15일
If not all elements of v are column names of T, you can use ismember to get just the elements of v that do correspond to column names of T:
v = {'Var1' 'Var3' 'Var4'}
T = table([1;2;3],[4;5;6],[7;8;9])
v_to_use = v(ismember(v,T.Properties.VariableNames))
And use that the same as v was used before:
new_T = T(:,v_to_use)
new_T_data = T{:,v_to_use}
추가 답변 (0개)
참고 항목
카테고리
Help Center 및 File Exchange에서 Logical에 대해 자세히 알아보기
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!