Halloo! I've hit a snag trying to automate an ifelse statement with two conditions... I've generated a fake value for every minute in a day and want to group values by intervals - hourly, every 5 mins, every twenty, whathaveyou - but the only way I've been able thus far to group by these intervals is brute force:
d$hourly <- ifelse(d$t >= 0 & d$t <= 60, 0,
ifelse(d$t > 60 & d$t <= 120, 1,
ifelse(d$t > 121 & d$t <= 180, 2,
ifelse(d$t > 180 & d$t <= 240, 3,
ifelse(d$t > 240 & d$t <= 300, 4,
ifelse(d$t > 300 & d$t <= 360, 5,
ifelse(d$t > 360 & d$t <= 420, 6,
ifelse(d$t > 420 & d$t <= 480, 7,
ifelse(d$t > 480 & d$t <= 520, 8,
ifelse(d$t > 520 & d$t <= 600, 9,
ifelse(d$t > 600 & d$t <= 660, 10,
ifelse(d$t > 660 & d$t <= 720, 11,
ifelse(d$t > 720 & d$t <= 780, 12,
ifelse(d$t > 780 & d$t <= 840, 13,
ifelse(d$t > 840 & d$t <= 900, 14,
ifelse(d$t > 900 & d$t <= 960, 15,
ifelse(d$t > 960 & d$t <= 1020, 16,
ifelse(d$t > 1020 & d$t <= 1080, 17,
ifelse(d$t > 1080 & d$t <= 1140, 18,
ifelse(d$t > 1140 & d$t <= 1200, 19,
ifelse(d$t > 1200 & d$t <= 1260, 20,
ifelse(d$t > 1260 & d$t <= 1320, 21,
ifelse(d$t > 1320 & d$t <= 1380, 22,
ifelse(d$t > 1380 & d$t <= 1440, 23, NA))))))))))))))))))))))))
presumably, there is something I am not understanding about for(i in 1:nrow) or other looped functions. Is there a cleaner way to loop conditionals over a vector?
Many thanks!