Filter löschen
Filter löschen

extracting subset array from a cell array

10 Ansichten (letzte 30 Tage)
Christian Chamberlayne
Christian Chamberlayne am 29 Apr. 2020
Beantwortet: Ameer Hamza am 29 Apr. 2020
I have data with multiple values at each location x y z. I have stored this as a cell array as follows.
DataPoint{x,y,z} = [V1, V2 , V3, V4, V5, V6];
DataPoint{2,3,4}(1) works to extract the value V1 at point 2,3,4.
I want to extract the values of V1 for all the points as a 3D array.
valuesV1 = DataPoint{ :, :, : }(1);
gives the following error: "Expected one output from a curly brace or dot indexing expression, but there were 1000 results."
1) everything is numeric, is there a different structure other than cell array that would be better?
2) what is the correct syntax for this?
3) should I just make a loop to do this or would that be slower?

Antworten (1)

Ameer Hamza
Ameer Hamza am 29 Apr. 2020
Use cellfun()
valuesV1 = cellfun(@(x) x(1), DataPoint);

Kategorien

Mehr zu Matrices and Arrays finden Sie in Help Center und File Exchange

Tags

Produkte


Version

R2016b

Community Treasure Hunt

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

Start Hunting!

Translated by