chunkify

版本 1.0.0.0 (851 字节) 作者: Gerald Dalley
Splits a vector or cell array into evenly-sized chunks.
1.9K 次下载
更新时间 2006/2/21

无许可证

C = CHUNKIFY(DATA, CHUNKSIZE)

Turns a matrix DATA into chunks of data with CHUNKSIZE elements in each cell entry of C. If DATA's size is not evenly divisible by CHUNKSIZE, the last entry in C will contain fewer items.

Examples:

chunkify([1 2 3 4], 2) --> {[1 2] [3 4]}
chunkify([1 2 3 4 5], 2) --> {[1 2] [3 4] [5]}

chunkify({'1' '2' '3' '4'}, 2) --> {{'1' '2'} {'3' '4'}}

Motivating scenario:

I wrote this function because I needed to process a lot of data in separate chunks, sometimes to have different machines run each chunk, sometimes to just load in chunks of the data files so I could balance I/O and memory constraints. In both these cases, I found it handy to have this simple function to break up my index vector. Because the number of data items was not always an exact multiple of my desired chunk size, I used this function instead of Matlab's built-in RESHAPE (putting one chunk per row, for example).

TODO:
If DATA is multi-dimensional, the dimension on which to chunkify is given by DIM.
chunkify([1 2 3 4], 2, 2) --> {[1 2] [3 4]}
chunkify([1 2 3 4], 2, 1) --> {[1 2 3 4]}
chunkify([1 2; 3 4], 2, 1) --> {[1 2] [3 4]}

引用格式

Gerald Dalley (2024). chunkify (https://www.mathworks.com/matlabcentral/fileexchange/10004-chunkify), MATLAB Central File Exchange. 检索来源 .

MATLAB 版本兼容性
创建方式 R14SP2
兼容任何版本
平台兼容性
Windows macOS Linux
类别
Help CenterMATLAB Answers 中查找有关 Dictionaries 的更多信息

Community Treasure Hunt

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

Start Hunting!
版本 已发布 发行说明
1.0.0.0

Removed boilerplate copyright, added motivating example.