Имея эти данные:Как подсчитать, сколько элементов удовлетворяет условию в идиоматическом режиме?
> data
[1] 1290603356 1290603360 1290603350 1290603344 1290603340 1290603373
[7] 1290603354 1290603359 1290603345 1290603363 1290603357 1290603354
[13] 1290603364 1290603349 1290603352 1290603365 1290603349 1290603343
[19] 1290603339 1290603343
> offsets <- c(0, 0.5,1,2,4,8,24,4*24,7*24) * 3600)
[1] 1800 3600 7200 14400 28800 86400 345600 604800
> myoffsets <- min(data)+offsets
существо, список UNIX эпох и список смещений (0,5 ч, 1ч, 2ч, 4ч ...) Я хочу, чтобы иметь возможность построить график, сколько из эпох < = чем мин (данные) + смещение
в этом примере было бы
1 20 20 20 20 20 20 20
Я обнаружил, как сделать это с цикл:
for(i in c(1:length(myoffsets))) myres$x[i] <- length(data[data <= myoffsets[i]])
Но я уверен, что есть более идиоматический способ, если вы делаете это, не так запутанно?
Это выглядит довольно хорошо. Теперь гораздо приятнее смотреть. Спасибо, что помогли новичкам! Я собрал все это вместе в кадре данных df <- data.frame (cbind (offsets = min (data) + c (0, 0.5,1,2,4,8,24,4 * 24,7) * 24) * 3600)) df $ cnt <- sapply (df $ offsets, function (o) sum (data <= o)) – user525602