How to Name Columns in a Table?

조회 수: 61 (최근 30일)
Julia Williams
Julia Williams 2019년 6월 20일
댓글: Star Strider 2019년 6월 20일
I would like to change my array (y) to a table. y is 1a 3 x 133 double. I would also like to name the columns of this table with the names listed. I have checked to see if these names work within matlab with the isvarname function and they work fine. I have also counted these variables and there are 133 . I have also tried this with commas inbetween the variables but I get the same error message. I am not sure why this error message is popping up and any help is much appreciated!
Code:
B = array2table(y, 'VariableNames',{'L_palmPosX' 'L_palmPosY' 'L_palmPosZ' 'L_thumb_basePosX' 'L_thumb_basePosY' 'L_thumb_basePosZ' 'L_thumb_knuckle1PosX' 'L_thumb_knuckle1PosY' 'L_thumb_knuckle1PosZ' 'L_thumb_knuckle2PosX' 'L_thumb_knuckle2PosY' 'L_thumb_knuckle2PosZ' 'L_thumb_tipPosX' 'L_thumb_tipPosY' 'L_thumb_tipPosZ' 'L_index_basePosX' 'L_index_basePosY' 'L_index_basePosZ' 'L_index_knuckle1PosX' 'L_index_knuckle1PosY' 'L_index_knuckle1PosZ' 'L_index_knuckle2PosX' 'L_index_knuckle2PosY' 'L_index_knuckle2PosZ' 'L_index_tipPosX' 'L_index_tipPosY' 'L_index_tipPosZ' 'L_middle_basePosX' 'L_middle_basePosY' 'L_middle_basePosZ' 'L_middle_knuckle1PosX' 'L_middle_knuckle1PosY' 'L_middle_knuckle1PosZ' 'L_middle_knuckle2PosX' 'L_middle_knuckle2PosY' 'L_middle_knuckle2PosZ' 'L_middle_tipPosX' 'L_middle_tipPosY' 'L_middle_tipPosZ' 'L_ring_basePosX' 'L_ring_basePosY' 'L_ring_basePosZ' 'L_ring_knuckle1PosX' 'L_ring_knuckle1PosY' 'L_ring_knuckle1PosZ' 'L_ring_knuckle2PosX' 'L_ring_tipPosX' 'L_ring_tipPosY' 'L_ring_tipPosZ' ' L_pinky_basePosX' 'L_pinky_basePosY' 'L_pinky_basePosZ' 'L_pinky_knuckle1PosX' 'L_pinky_knuckle1PosY' 'L_pinky_knuckle1PosZ' 'L_pinky_knuckle2PosX' 'L_pinky_knuckle2PosY' 'L_pinky_knuckle2PosZ' 'L_pinky_tipPosX' 'L_pinky_tipPosY' 'L_pinky_tipPosZ' 'R_elbowPosX' 'R_elbowPosY' 'R_elbowPosZ' 'R_wristPosX' 'R_wristPosY' 'R_wristPosZ' 'R_palmPosX' 'R_palmPosY' 'R_palmPosZ' 'R_thumb_basePosX' 'R_thumb_basePosY' 'R_thumb_basePosZ' 'R_thumb_knuckle1PosX' 'R_thumb_knuckle1PosY' 'R_thumb_knuckle1PosZ' 'R_thumb_knuckle2PosX' 'R_thumb_knuckle2PosY' 'R_thumb_knuckle2PosZ' 'R_thumb_tipPosX' 'R_thumb_tipPosY' 'R_thumb_tipPosZ' 'R_index_basePosX' 'R_index_basePosY' 'R_index_basePosZ' 'R_index_knuckle1PosX' 'R_index_knuckle1PosY' 'R_index_knuckle1PosZ' 'R_index_knuckle2PosX' 'R_index_knuckle2PosY' 'R_index_knuckle2PosZ' 'R_index_tipPosX' 'R_index_tipPosY' 'R_index_tipPosZ' 'R_middle_basePosX' 'R_middle_basePosY' 'R_middle_basePosZ' 'R_middle_knuckle1PosX' 'R_middle_knuckle1PosY' 'R_middle_knuckle1PosZ' 'R_middle_knuckle2PosX' 'R_middle_knuckle2PosY' 'R_middle_knuckle2PosZ' 'R_middle_tipPosX' 'R_middle_tipPosY' 'R_middle_tipPosZ' 'R_ring_basePosX' 'R_ring_basePosY' 'R_ring_basePosZ' 'R_ring_knuckle1PosX' 'R_ring_knuckle1PosY' 'R_ring_knuckle1PosZ' 'R_ring_knuckle2PosX' 'R_ring_knuckle2PosY' 'R_ring_knuckle2PosZ' 'R_ring_tipPosX' 'R_ring_tipPosY' 'R_ring_tipPosZ' 'R_pinky_basePosX' 'R_pinky_basePosY' 'R_pinky_basePosZ' 'R_pinky_knuckle1PosX' 'R_pinky_knuckle1PosY' 'R_pinky_knuckle1PosZ' 'R_pinky_knuckle2PosX' 'R_pinky_knuckle2PosY' 'R_pinky_knuckle2PosZ' 'R_pinky_tipPosX' 'R_pinky_tipPosY' 'R_pinky_tipPosZ'});
Error:
The VariableNames property must contain one name for each variable in the table.

채택된 답변

Star Strider
Star Strider 2019년 6월 20일
That looks like it should work.
Try this:
B = array2table(y)
first, to be sure that all the columns in ‘y’ are actually being assigned to columns in ‘B’. I suspect that they aren’t.
  댓글 수: 4
Julia Williams
Julia Williams 2019년 6월 20일
Amazing! Thank you once again for all your help! My miscount has caused me so much frustration!
Star Strider
Star Strider 2019년 6월 20일
As always, my pleasure!

댓글을 달려면 로그인하십시오.

추가 답변 (0개)

카테고리

Help CenterFile Exchange에서 Interactive Control and Callbacks에 대해 자세히 알아보기

태그

Community Treasure Hunt

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

Start Hunting!

Translated by