Я хотел бы начать с изменения A, чтобы каждый срез становился строкой (с командой reshape
). Затем используйте unique(A, 'rows')
. Наконец, измените уникальные строки на одну и ту же фигуру срезы.
Например:
% transforming so each row is a slice in row form
reshaped_A = reshape(A, [], size(A, 3))';
% getting unique rows
unique_rows = unique(reshaped_A, 'rows');
% reshaping back
unique_slices = reshape(unique_rows', size(A, 1), size(A, 2), []);
Или все в одной строке:
reshape(unique(reshape(A, [], size(A, 3))', 'rows')', size(A, 1), size(A, 2), [])
Я не проверял этот выше код, поэтому используйте с осторожностью! Но это должно дать идею.
EDIT
Здесь он работает над вашими данными (также исправлена небольшая ошибка в вышеприведенном коде):
>> reshaped_A = reshape(A, [], size(A, 3))'
reshaped_A =
Columns 1 through 11
16 5 9 4 2 11 7 14 3 10 6
1 0 0 0 0 1 0 0 0 0 1
16 5 9 4 2 11 7 14 3 10 6
0 0 0 1 0 0 1 0 0 1 0
Columns 12 through 16
15 13 8 12 1
0 0 0 0 1
15 13 8 12 1
0 1 0 0 0
Каждая из этих ^^ строк является одним из исходных срезов
>> unique_rows = unique(reshaped_A, 'rows')
unique_rows =
Columns 1 through 11
0 0 0 1 0 0 1 0 0 1 0
1 0 0 0 0 1 0 0 0 0 1
16 5 9 4 2 11 7 14 3 10 6
Columns 12 through 16
0 1 0 0 0
0 0 0 0 1
15 13 8 12 1
Эти ^^ являются уникальными срезами, но в неправильной форме.
>> unique_slices = reshape(unique_rows', size(A, 1), size(A, 2), [])
unique_slices(:,:,1) =
0 0 0 1
0 0 1 0
0 1 0 0
1 0 0 0
unique_slices(:,:,2) =
1 0 0 0
0 1 0 0
0 0 1 0
0 0 0 1
unique_slices(:,:,3) =
16 2 3 13
5 11 10 8
9 7 6 12
4 14 15 1
Вы может довольно легко встраивать представления в другие представления, примите во внимание следующее:
В вашем контроллере Передайте данные для соответствующих компонентов вашей страницы в виде многомерного массива.
//Get data
$data['other_page_data'] = $this->some->model->get_page_data($page_id)
$data['home_events_view'] = $this->eventsmodel->get_events();
//Load View
$this->load->view('home', $data);
На ваш взгляд Просто передайте массив событий обратно в $ data и загрузите представление.
<?php
$data['home_events_view'] = $home_events_view;
$this->load->view('home_events', $data);
?>