【发布时间】:2017-08-09 02:00:17
【问题描述】:
我想要一种更简单的方法来确定一个值是否在任何给定的区间内。给定数据框:
Value start1 start2 start3 end1 end2 end3
212 82 195 409 97 220 411
80 57 95 111 69 100 130
如果“值”在任何区间([start1-end1]、[start2-end2] 等)中,我想创建一个 1 的新列,如果不是,则创建一个 0;因此在上述情况下,第一行的值为 1,因为 212 落在第二个间隔中,第二行为 0。请注意,这些是当前列和边缘情况的顺序(值匹配开始或间隔结束)应编码为 1。
我可以使用 ifelse 语句来做到这一点,但有 260 列,我觉得该解决方案将来可能会在其他方面有用。
【问题讨论】: