How do I access data from a table?

2 次查看(过去 30 天)
I have a Table with 2 different set of experiments. each experiments have 2 subexperiments. each subexperiment have 5 sets of data. How to plot a graph of each subexperiment results? I need a plot of all subexperiments.

采纳的回答

Peter Perkins
Peter Perkins 2017-5-18
You don't need table2array.
Your example data don't seem to match either description, so I'm just guess what they look like. Also you don't say what kind of plot.
>> type = [1;1;1;1;1;2;2;2;2;2;3;3;3;3;3];
>> subexperiment = [1;2;3;4;5;1;2;3;4;5;1;2;3;4;5];
>> result = randn(15,1);
>> t = table(type,subexperiment,result)
t =
15×3 table
type subexperiment result
____ _____________ __________________
1 1 -0.204966058299775
1 2 -0.124144348216312
1 3 1.48969760778546
1 4 1.40903448980048
1 5 1.41719241342961
2 1 0.67149713360808
2 2 -1.20748692268504
2 3 0.717238651328838
2 4 1.63023528916473
2 5 0.488893770311789
3 1 1.03469300991786
3 2 0.726885133383238
3 3 -0.303440924786016
3 4 0.293871467096658
3 5 -0.787282803758638
>> i1 = (t.type == 1);
>> plot(t.subexperiment(i1),t.result(i1))
That plots all the type 1 results. Put that in a loop, perhaps using subplot. It's also pretty simple to do something like
rowfun(@plot,t,'GroupingVariable','type','NumOutputs',0)
but actually you'd need to write a two-line function that made a new figure window or paused or something, otherwise you'll only see the last plot.
  4 个评论
Peter Perkins
Peter Perkins 2017-5-23
Create a short example of actual code that you are using, using a small sample of exactly the kind of data you have, and show exactly what you are trying to do, and where you are running into problems.

请先登录,再进行评论。

更多回答(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