3
Q
矩陣計數獨特的行
A
回答
4
1
與sum
一行代碼的解決方案,any
,diff
& sortrows
-
count_unqrows = sum(any(diff(sortrows(a),1),2))+1
個
基準 -
基準測試代碼比較所有解決辦法,到目前爲止發佈:
%// Input
a = randi(1000,5000,5000);
%// Warm up tic/toc.
for k = 1:50000
tic(); elapsed = toc();
end
disp('-------------- With SUM, ANY, DIFF, SORTROWS')
tic
out1 = sum(any(diff(sortrows(a),1),2))+1;
toc, clear out1
disp('-------------- With UNIQUE, NUMEL')
tic
[~,c] = unique(a,'rows');
out2 = numel(c);
toc, clear out2
disp('-------------- With UNIQUE, SIZE')
tic
out3 = size(unique(a,'rows'), 1);
toc, clear out3
結果:
-------------- With SUM, ANY, DIFF, SORTROWS
Elapsed time is 0.502803 seconds.
-------------- With UNIQUE, NUMEL
Elapsed time is 1.237495 seconds.
-------------- With UNIQUE, SIZE
Elapsed time is 1.155051 seconds.
相關問題
- 1. 具有獨特色號的子矩陣
- 2. 使用SUM和獨特的矩陣
- 3. 找到獨特的對在矩陣
- 4. ICA - 統計獨立性和協方差矩陣的特徵值
- 5. R:計數矩陣行的匹配數
- 6. 選擇矩陣矩陣的特定行(開窗函數)
- 7. 垃圾,指數和獨特的矩陣(如何保持矩陣格式)
- 8. Java矩陣運算,並行柯爾特矩陣 - 矩陣乘法
- 9. 排列的矩陣爲獨特的行和列
- 10. N * N矩陣,計數唯一矩形矩陣的數量。
- 11. 使用矩陣*(矩陣')的特徵向量計算svd
- 12. R:按組分組的獨特矩陣行
- 13. 矩陣內特定位置的計算
- 14. 展開計數的矩陣
- 15. MySQL的計數獨特的行值
- 16. 計算矩陣行列式
- 17. Jenkins用每個配置的獨特參數構建矩陣
- 18. 計數獨特的行輸出在MySQL
- 19. 計算給定行向量矩陣的距離矩陣
- 20. 獨特的陣列
- 21. 創建計數通過計數矩陣
- 22. 矩陣計算
- 23. 矩陣計算
- 24. 計算矩陣
- 25. 斯威夫特的矩陣行列式計算器
- 26. 如何計算特徵中外部行主矩陣的轉置
- 27. 獨特的計數每
- 28. 獨特的計數R ddply
- 29. MySql中的獨特計數
- 30. 在matlab中計算涉及矩陣的函數的Hessian矩陣
比較我與你的第一個解決方案,將是更公平的 - 但你更快在任何情況下;)+1 – thewaywewalk
@thewaywewalk好吧,它似乎有一點改善。還補充說! :) – Divakar