matlab - matlab中的两个最小值
问题描述
selection = {[1],[1,2],[1,2,3]}';
AIC = [0.00 0.01 0.00]';
for ii = 1:size(selection,1);
sizer(ii) = size(selection{ii,1},2);
end
sizer = sizer';
pick = selection{AIC == min(AIC)}
看上面的例子,
我正在尝试选择作为最高尺寸值的最小 AIC,
我想“选择”来选择 [1,2,3] 而不是 [1]。
谢谢
解决方案
您可以使用cellfun
with@size
来获取所有尺寸,并使用max
来获取最大尺寸:
sizes = cellfun(@size, selection, 'UniformOutput', false);
pick = max([sizes{AIC == min(AIC)}])
推荐阅读
- python - 更改张量流图并恢复训练
- java - 如果页面异步更改其内容(无需重新加载页面),如何制作 WebDriverWait?
- assembly - 我正在尝试使用程序集从 1 添加到 10,我必须使用 DI 寄存器
- python - 如何在 python 类中使用概率分布?
- html - 我的引导模式默认打开/损坏
- ros - SLAM/VO中的数据关联和特征匹配有什么区别?
- python - Shopify Django 应用程序:printf:警告:忽略多余的参数,以“;”开头
- google-bigquery - BigQuery:使用分片表将表插入到现有的谷歌分析中
- c++ - 工作速度更快的 std::find 的替代方案
- iis - 创建一条规则来维护多个 URL