2012-05-23 54 views
0

我目前正在使用矩陣,我想在每一行中找到最低的正值。查找每行中的最小正值(不包括0)

使用申請(my.matrix,1分鐘)將無法工作,因爲輸出將始終爲0 ...

有沒有辦法找到不包括0的最低值?

回答

5

你可以用匿名函數做到這一點。

apply(my.matrix, 1, FUN = function(x) {min(x[x > 0])}) 
+0

親愛shujaa, 非常感謝您! 它工作完美! :) 乾杯, J – JMFA

+0

@shujja 完成! :) – JMFA

-2

您的方法這個變化對我的作品:

apply(my.matrix, 1, FUN=function(x) {min(x>0)}) 
+0

'x> 0'是一個布爾向量,只是TRUE和FALSE,當你尋找最小值時,它被強制爲1爲真,0爲假。如果有任何數字爲0或更少,此答案將返回0,否則返回1。 – Gregor