this will help You can use apply() to go though your startfinish data.frame, check if the numbers are between start and finish values and sum up the logical vector returned from data.tables' between() function. code :
Numbers<c(0.1,0.2,0.3,0.7,0.8,0.9,0.91,0.99)
sf <
read.table(text =
"Start Finish
0.00 0.86
0.87 0.89
0.90 0.98
0.99 1.00",
header = TRUE
)
apply(sf, 1, function(x) {
sum(data.table::between(Numbers, x[1], x[2]))
})
5 0 2 1
Share :

giving lots of intervals [ai, bi], find a interval which intersect with the most number of intervals
By : Kobus van vuuren
Date : March 29 2020, 07:55 AM
wish help you to fix your issue Suppose the intervals are given as (a1,b1), ..., (an,bn). Make a sorted array of length 2n where ties are broken by if ai = aj, then put ai first iff bi < bj if bi = bj, then put bi first iff ai < aj if ai = bj, then put ai first

Given a vector of intervals output any one number within the interval that has been overlapped the most times
By : user3376867
Date : March 29 2020, 07:55 AM
I hope this helps you . Here is a simple O(n log n) solution which uses events and sweep line:

Matlab: How to turn a vector of 2928x1 into a vector of 8784x1 with specific intervals of elements?
By : Gloria
Date : March 29 2020, 07:55 AM
With these it helps I am trying to convert a vector with 2928 values into a vector with 8784 values. The first vector is a vector with info with an interval of 3hours, and I would like to have an hourly vector with those values added every 3 hours and the remaining should be filled with NaN. My first approach was to create a NaN vector with 8784 values but then I have not been able to create a 'for loop' that worked with this. , Simply index with step different to 1. In this case, step is 3. code :
B_h(1:3:end) = S_3h

Looping through a vector and finding a maximum sum of values with fixed number of indices
By : sc0
Date : March 29 2020, 07:55 AM
hop of those help? Pretend you have an infinite sequence of numbers, repeating itself. It makes the problem much easier: code :
fn main() {
let d = [1, 2, 3, 4, 5, 6, 7, 8];
let mut numbers = d.iter().cycle();
let max = (0..d.len())
.map(_ {
let sum1: i32 = numbers.by_ref().take(3).sum();
let sum2: i32 = numbers.by_ref().take(5).sum();
// Skip one so the next iteration is offset by one
numbers.next();
(sum1, sum2)
})
.map((sum1, sum2) i32::abs(3 * sum1 + 5 * sum2))
.max();
println!("{:?}", max);
}

find different intervals for a vector of values, making number of values in each interval approximately equal
By : user3190399
Date : March 29 2020, 07:55 AM
it helps some times You want the breaks at particular quantiles of your data. For example, code :
v01 < runif(1000, 0, 1)
v12 < runif(1000, 1, 2)
v25 < runif(1000, 2, 5)
v < c(v01, v12, v25)
n < 3 # Number of intervals
breaks < quantile(v, (0:n)/n) # These are the breakpoints. You might
# want to round them to integers, based
# on your example
breaks
# 0% 33.33333% 66.66667% 100%
# 0.0004285758 1.0002311588 1.9999579265 4.9946567267

