shake

バージョン 5.0 (2.16 KB) 作成者: Jos (10584)
Randomize a matrix along one dimension
ダウンロード: 4K
更新 2019/2/7

ライセンスの表示

shake - Randomize a matrix along a specific dimension
Y = shake(X) randomizes the order of the elements in each column of the
2D matrix. For N-D matrices it randomizes along the first non-singleton
dimension.

shake(X, DIM) randomizes along the dimension DIM.

[Y, I, J] = shake(X) returns indices so that Y = X(I) and X = Y(J).

Example:
A = [1 2 3 ; 4 5 6 ; 7 8 9 ; 10 11 12] ; % see <SLM> on the FEX ...
B = shake(A, 2) % -> each row is shaked randomly
% 3 2 1
% 6 4 5
% 7 8 9
% 11 10 12%
C = sort(B, 2) % -> equals A!

For vectors V, shake(V) is similar to V(randperm(numel(V)).

The function of shake can be thought of as holding a matrix and shake
in a particular direction (dimension), so that elements are getting
shuffled within that direction only.

引用

Jos (10584) (2024). shake (https://www.mathworks.com/matlabcentral/fileexchange/10067-shake), MATLAB Central File Exchange. に取得済み.

MATLAB リリースの互換性
作成: R2018b
すべてのリリースと互換性あり
プラットフォームの互換性
Windows macOS Linux
カテゴリ
Help Center および MATLAB AnswersShifting and Sorting Matrices についてさらに検索
謝辞

ヒントを与えたファイル: randone1, RANDSWAP, Permute a grouped vector

Community Treasure Hunt

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

Start Hunting!
バージョン 公開済み リリース ノート
5.0

updated for newer ML releases, updated algorithm

1.0.0.0

fixed error for scalar inputs