2014-07-09 118 views
0

我有一個數據框,有很多列。我需要獲取任意列的列表以及滿足基於這些列的某些條件的行數。例如,數據幀具有列a,b和C,我需要得到行數是b> 0爲b和c> 0在計數數據幀行R條中的任意列的條件

列的形式C計數

b 23分配

c 12

什麼是最簡單的方法?

回答

0
sum(df$b > 0) 

sum(df$c > 0) 
+0

請加一點解釋。代碼只是(有時)很好,但代碼和解釋(大部分時間)更好。 – Barranka

2

你可以使用lapply,這樣你就不需要重複輸入相同的功能,你想要每一列:

lapply(df[,c("b","c")], function(x) sum(x > 0)) 

在這種情況下,您可以指定希望輸出的列在df[,c("b","c")]中,或者您可以用df替換,以檢查所有列。

輸出將是一個列表,比許多單獨的值可能更容易處理。

+0

謝謝!它很棒! –

+1

很高興聽到這一點。因此,如果您的問題得到解答,您可以通過單擊左側的複選標記向其他人表明此問題已完成,從而接受該答案。 –