データセットからの置換でランダムサンプルを行う最良の方法は何ですか? データセットとして 316 * 34 を使用しています。データを3 つのバケットに分割したいが、置き換えたい。ラベルデータを識別するのに便利なインデックスをそのまま保持する必要があるため、randperm を使用する必要があります。私はいくつかのランダムサンプルメソッドがあるのを見ましたが、それらは私が探していることをしているようには見えませんでした.matlabに何かが存在しないと考えるのは奇妙ですが、私は次のことをしました:
私の問題は、これを行うrow_idx = round(rand(1)*316)
とゼロになることがあり、2つの質問につながることです
- ゼオを避けるにはどうしたらいいですか?
置換でランダム サンプルを実行する最良の方法は何ですか。
shuffle_X = X(randperm(size(X,1)),:); lengthOf_shuffle_X = length(shuffle_X) number_of_rows_per_bucket = round(lengthOf_shuffle_X / 3) bucket_cell = cell(3,1) bag_matrix = [] for k = 1:length(bucket_cell) for i = 1:number_of_rows_per_bucket row_idx = round(rand(1)*316) bag_matrix(i,:) = shuffle_X(row_idx,:) end bucket_cell{k} = bag_matrix end
私は次のことができます:
if row_idx == 0
row_idx = round(rand(1)*316)
乱数が2つの連続したラウンドで2つのゼロ値を与えることは決してないと仮定します。