У меня есть несколько таблиц данных, которые состоят из нескольких столбцов и многих тысяч строк. Мои данные выглядит примерно так:Как сгенерировать количество положительных значений по столбцу в data.table
iteration V1 V2 V3 V4
1 -2 3 -4 1
2 -2 3 -3 4
3 -2 3 7 -8
4 -2 3 -4 2
5 -2 3 -4 -3
Я пытался выяснить, как рассчитать подсчет положительных значений в каждом столбце, а доля положительных отсчетов по всем пунктам в колонке.
Это кажется довольно простым, но я не могу понять, как выводить таблицу данных, которая имеет счет по столбцу в ней.
Я могу сделать это, объединив кучу следующих утверждений, но должен быть лучший способ - любой совет для усталого ума?
nrow(dat[v2>=0])
'colSums (Дат> 0)' – alistaire
Если у вас действительно есть 'data.table', может быть' Дат [, lapply (.sd, функция (х) сумма (х > 0))] будет более эффективным (избегает преобразования матрицы) –
@DavidArenburg - хотя добавление столбца 'iteration' кажется немного нечетным - возможно,' dat [, lapply (.SD, function (x) sum (x> 0)), .SDcols = -1] ' – thelatemail