How do I retrieve a specific range of values from a cell?

6 次查看(过去 30 天)
I have a 1x4 cell that contains 685x1 doubles and I need to plot certain ranges that are contained inside cells. For example, I want to plot rows 15-25 of cell 1 and 4.

采纳的回答

Turlough Hughes
Turlough Hughes 2019-10-31
编辑:Turlough Hughes 2019-10-31
Let's say your cell is called data and this is a 1 by 4 cell array with each cell containing column vectors of size 685 x 1. You can access the data directly using the following code:
data{1,1}(15:25,1)
data{1,2}(15:25,1)
data{1,3}(15:25,1)
data{1,4}(15:25,1)
You could also take rows 15:25 from each cell in your cell array as follows:
numarray=cell2mat(cellfun(@(x) x(15:25), data, 'UniformOutput', false))
plot(numarray)
TLDR;
If your cells are always the same size you can do the following:
numarray=cell2mat(data);
plot(numarray(15:25,:))

更多回答(0 个)

类别

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

标签

产品


版本

R2019a

Community Treasure Hunt

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

Start Hunting!

Translated by