【问题标题】:MATLAB: Random Sample from Array with NaNs, need indexMATLAB:来自具有 NaN 的数组的随机样本,需要索引
【发布时间】:2019-07-17 18:07:54
【问题描述】:

我正在尝试获取包含NaNs 的矩阵的随机样本,但我也需要索引。

我试过randsample(matrix(~isnan(matrix)),10);,但我只得到矩阵的值,而不是这里的索引。由于多个位置可能具有相同的值,因此索引非常重要。

如果我的矩阵是:

[ NaN 2 3  
 3 4 5  
 1 NaN 6]  

随机样本值为3,我还想查看索引(2,1)

【问题讨论】:

    标签: matlab random


    【解决方案1】:

    先找索引,再找对应的值。使用ind2sub 将线性索引转换为行/列下标。

    [r, c] = ind2sub(size(matrix), randsample(find(~isnan(matrix)),1));
    val = matrix(r,c);
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2022-01-07
      • 2014-09-15
      • 1970-01-01
      • 2013-10-29
      • 2020-09-08
      相关资源
      最近更新 更多