2016-10-16 2 views
0

Дано:Extract (ценовые данные как) 1D вектор из вложенной ячейки

data = { ... 
    { '2014-12-31' [79.2100] } ... 
    { '2014-12-30' [79.3000] } ... 
    { '2014-12-26' [79.1200] } }; 

Мне нужно извлечь:

prices = [ 79.2100, 79.3000, 79.1200 ]; 

Что является хорошим способом для достижения этой цели? Цикл for будет прост в реализации и в сочетании с предварительным распределением будет достаточно эффективным. Но это выглядит немного неуклюжим.

ответ

1

Вы могли бы сначала преобразовать массив ячеек в не вложенный массив, а затем извлечь вторую колонку и конвертирование из ячейки в массив в обычный массив с использованием cat в сочетании с {} индексации.

% Turn your nested cell array into an N x 2 cell array 
data = cat(1, data{:}); 

% Get just the second column 
prices = cat(2, data{:,2}); 
Смежные вопросы