8
A
回答
5
v = a(sub2ind(size(a), b, 1:length(b)))
sub2ind
將下標轉換爲單個索引。
0
要嘗試的另一件事,保持非常接近您的描述,您可以使用arrayfun
函數。
首先定義一個函數,將值x
映射到期望的輸出。
fn = @(x) a(b(x), x);
然後調用在所述的i
向量中的每個輸入端,功能。
i = 1:3;
v = arrayfun(fn, i);
或者,這可以在一個單一的線來完成,以明顯的方式:
v = arrayfun(@(x) a(b(x), x), 1:3);
這arrayfun
簡直是簡寫以下循環:
for ixLoop = 1:3
v(ixLoop) = a(b(ixLoop),ixLoop);
end
的相關功能arrayfun
,cellfun
和structfun
具有類似的用途,並且奇怪地賦予權力。 This Joel article說服我是一個信徒。
相關問題
- 1. Matlab,如何比較行矩陣的每個元素與另一行矩陣的每個元素?
- 2. 給定2d矩陣找到元素的最小和,使得元素從每行和每列中選擇一個?
- 3. 如何將每行與matlab中另一個矩陣元素的每行相乘?
- 4. 如何在MATLAB中爲矩陣中的每列添加每列中的元素?
- 5. 如何使用Matlab中的布爾矩陣選擇元素
- 6. 一次從R中的矩陣中選擇元素
- 7. 從矩陣的每一行和每列中選擇一個元素,並將總和最小化
- 8. 如何用MATLAB中的另一個矩陣替換矩陣的元素?
- 9. 從矩陣的每一行中刪除一個元素,每個元素都在不同的列中
- 10. 如何在Matlab中選擇一個子矩陣?
- 11. 從數獨矩陣的每一行和列中移除一個隨機元素
- 12. Python3.4:檢查矩陣中的每個元素是否在另一個陣列中
- 13. R一次從矩陣中選擇特定元素
- 14. 如何從MATLAB中的第一個單元陣列中刪除共同元素?
- 15. 一次選擇多個陣列元素
- 16. 從MATLAB中的矩陣中去除任意列中的元素
- 17. R:從另一個矩陣的元素中減去矩陣的元素
- 18. Concat元素到一個矩陣矩陣Matlab
- 19. 從與NumPy陣列的每一行中刪除一個元素
- 20. 選擇矩陣元素的列表
- 21. 在matlab單元陣列中選擇第n個元素
- 22. 將函數應用於matlab單元陣列中的矩陣的每一列
- 23. Matlab:選擇矩陣的一部分
- 24. 選擇矩陣元素(矩陣語言)
- 25. jQuery的傳遞從選擇器功能的每個元素,使陣列選擇最後一個元素
- 26. 從另一個陣列中排除一個陣列的元素
- 27. 如何從有序列表中選擇一個列表元素?
- 28. 創建矩陣中的矩陣B的每一個元素髮現矩陣最接近元素A
- 29. 在Matlab中對矩陣的每個元素應用函數
- 30. 在Matlab中找到每個矩陣元素的距離