我有一個包含一長串數據(時間序列)的向量。我希望找到每60個元素的最大值,而不需要手動C = [max(B(1:60))等等,因爲它是一個相當大的數據集。有沒有一種乾淨的方式來做到這一點?感謝您的任何想法!我很感激。查找我的數據中每60個元素的最大值-MATLAB
回答
作爲另一種選擇,你可以看看blkproc。
A= randn(600,1);
blkproc(A, [60,1], 'max');
blkproc正在被淘汰,所以你也必須看看blockproc。
雖然重塑和最大化可能會更有效,正如評論中提到的那樣。
max(reshape(A, [60, 10]))
[更新]
作爲一個說明...不使用blkproc :-)。使用非常大的數組(A),blkproc比最大值重構要慢100倍。
奧利的建議值得作出正式答案。試試這個:
C = max(reshape(B,60,[]));
如果數據不是60個元素的精確倍數,會發生什麼情況? –
對於元素數不是'60'的倍數的情況,填充負無窮。因此,如果'B'是一個列向量 - 'max(重塑(padarray(B,60-rem(numel(B),60), - Inf,'post'),60,[]))''。留給你找出行矢量的情況。 – Divakar
這是一個好主意!感謝您的建議。 –
你也可以使用'buffer'功能。
A= randn(600,1);
max(buffer(A,60));
這種解決方案即使當向量的長度不是60精確倍數和更快相比於「重塑」功能。
- 1. MATLAB:在陣列數據的每個區間中查找最大值?
- 2. 查找元組(數據庫)中的最小值和最大值
- 3. 查找BST中每個級別的最大元素
- 4. 查找最大值和最小值每N行的CSV數據
- 5. 在MIPS中查找10個元素數組的最大值和最小值
- 6. 一次查找數組12個元素的最大值
- 7. 如何查找3D MATLAB矩陣中最大元素的位置?
- 8. 查找包含多個數組中最大/最小值元素的數組?
- 9. MATLAB:查找每行第n個最小元素
- 10. 從數據幀中的每一列中查找最大值
- 11. 在Matlab中查找多個數字的最大值
- 12. 在每個列matlab中查找局部最大值和最小值
- 13. 在大小爲N的數組的每k個元素中查找最小元素和第二小元素
- 14. 在numpy ndarray中爲每個子陣列查找最大元素
- 15. 查找N個元素中的兩個最大數字
- 16. 查找陣列中最大的元素
- 17. 如何找到數組中每個元素的最近值?
- 18. Prolog查詢找到數據庫中最大的元素?
- 19. 在Matlab中查找最大值
- 20. 查找n個不同數組中常見的最大元素?
- 21. 在MATLAB中查找曲面的最小值和最大值
- 22. 查找每個最大值設置
- 23. 查找哪個元素是python的最大值
- 24. 在Matlab中查找2維數組的所有最小元素
- 25. 在動態數組的前N個元素中查找最大元素
- 26. 找到xml中每個元素的最大屬性?
- 27. 如何獲取SQL中的每個元素的最大值
- 28. 的Java查找最大元素
- 29. 查找元素的最大高度
- 30. 查找最大元素的位置
重塑爲60xN矩陣,然後沿每列應用最大值。 –