2017-01-18 6 views
-1

У меня есть набор данных myDF в R с переменными L1, L2, L3, L4. Как я могу получить количество наблюдений в L2, L3 и L4, площадь которых больше 0?подсчет числа значений больше 0 в R в нескольких столбцах

Я хотел бы использовать функцию подмножества, я просто не уверен, как Спасибо!

L1  L2  L3 L4 
1  1  0  2 
2  1  4  1 
3  1  3  1 
2  2  1  1 

Я хотел бы быть в состоянии создать функцию, которая будет иметь возможность подсчитывать количество строк в столбцах L2, L3 и L4 больше 0.

+1

'sapply (myDF [с ("L3", "L2", "L4"], функция (х) сумма (х> 0))' –

+2

'сумма (myDF [с ("L2" , «L3», «L4»)]> 0) ' – OdeToMyFiddle

+0

@ 李哲源 ZheyuanLi Я хотел бы подсчитать количество строк в тех определенных столбцах, у которых есть переменные> 0. Я не хочу добавлять переменные в каждый из столбцы. Спасибо! – Ashley

ответ

2

Мы можем использовать

colSums(myDF[c("L2", "L3", "L4")] > 0) 
0

Я не думаю, что colSums даст вам правильный ответ, поскольку он не учитывает количество наблюдений, а только суммирует значения столбцов.

Я думаю, что это даст вам то, что вы хотите, я надеюсь.

apply(myDF,2,function(x) sum(x > 0))