2013-12-15 45 views
2

我有一個正數和負數的數據框。 我需要返回的是最小的正數。 有沒有這樣的功能?R:返回最小正數

dfcount <- data.frame(A=c(1,2,3,4,-5,-6,-7)) 

即minpositive(dfcount)返回1,而不是-7

謝謝您的幫助

+0

您是否包括0爲正數? –

+0

另外:在你的情況下,它看起來像你想要搜索整個數據框。數據框中的所有列都是數字嗎? (如果是這樣,將它轉換爲矩陣不是更容易嗎?) –

回答

5

此功能將工作:

minpositive = function(x) min(x[x > 0]) 

例如:

dfcount <- data.frame(A=c(1,2,3,4,-5,-6,-7)) 
minpositive(dfcount) 
# 1 
+0

感謝您的幫助 –

1

這應該是w ork:

min(dfcount$A[dfcount$A > 0]) 
+0

正確,但可悲的是,大衛R.忍者 –