Subscripting a table using linear indexing (one subscript) or multidimensional indexing (three or more subscripts) is not supported

2 次查看(过去 30 天)
I recives this error:
Subscripting a table using linear indexing (one subscript) or multidimensional indexing (three or more
subscripts) is not supported. Use a row subscript and a variable subscript.
in this command:
hold on
plot(Tmean_split{(var_Tmean_split(i))}, 'dg');
hold off
I want to plot mean value on the existing boxplot.
Tmean_split is a table and var_Tmean_split is array string of the table columns.
  1 个评论
Image Analyst
Image Analyst 2020-1-1
I don't know what var_Tmean_split is. Is it a cell array of strings that you got from a column of the table called Tmean_split? If so, how can you plot strings? You can only plot numbers.
When you say
Tmean_split{(var_Tmean_split(i))}
the expression inside the {} must be a number saying what column you want to use. Evidently you're not giving it a single number but a cell array, a vector, or a column from a table (I'm not sure), but it's definitely not a single column number.
Can you attach your table in a .mat file with the paper clip icon and say what column you want to plot?

请先登录,再进行评论。

采纳的回答

Walter Roberson
Walter Roberson 2020-1-1
编辑:Walter Roberson 2020-1-1
plot(Tmean_split{:, var_Tmean_split(i)}, 'dg');
or
plot(Tmean_split.(var_Tmean_split(i)), 'dg');
  2 个评论
Walter Roberson
Walter Roberson 2020-1-1
If your var_Tmean_split really is an array string like you said, then your i is not scalar.
But I suspect that your var_Tmean_split is a cell array of character vectors rather than a string array. If so then in the above, where I have var_Tmean_split(i) replace that with var_Tmean_split{i}

请先登录,再进行评论。

更多回答(0 个)

类别

Help CenterFile Exchange 中查找有关 Tables 的更多信息

标签

Community Treasure Hunt

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

Start Hunting!

Translated by