簡體   English   中英

計算每列的特定閾值以上的平均值

[英]Calculate mean above certain threshold for each column

我的數據位於名為x的nxm數組中。 我想要做的是計算高於某個閾值的每列中的值的平均值。 所以輸出應該是1xm向量。

mean(x)顯然沒有指定閾值。 mean(x>70)執行真值檢查,基本上返回每列高於閾值的值的百分比

您可以這樣定義一個新變量

y = x > 70

接着

mean(x(y))

但是這會返回x的所有列的平均值。

通過為每列提供一行代碼,這是一種非常麻煩的方法。

mean(x(y(1:end,1)))

等等,但這顯然是丑陋的。

我覺得我在這里缺少一些簡單的東西。 希望有人能夠提供幫助。

你已經忘記了你可以通過元素來增加掩碼

threshold = []; %define threshold here; it can be a 1xm vector or a scalar.
output = sum(x.*(x>threshold))./sum(x>threshold);

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM