【发布时间】:2020-11-17 00:37:04
【问题描述】:
我是 R 新手,在根据某些标准对我的数据进行子集化时遇到一些问题。我有五列(位置、地点、物种、日期、时间)。
我想要做的是根据上一条记录的时间是否比同一日期、同一物种、同一地点和同一位置的上一条记录的时间大于一小时来对我的数据进行子集化。如果前面的任何列与前面的列不同,我希望它忽略它并继续前进。
作为一个例子,这个数据框应该说前两条记录是独立的,因为时间列之前的所有列都是相同的,它们之间的间隔 = 或 > 大于 60 分钟,而最后一条记录是 59 分钟,因此不是独立的。
Location Site Species Date Time
Twelve 2 frog 14-10 13:45
Twelve 2 frog 14-10 14:45
Twelve 2 frog 14-10 15:44
在这个例子中,前两行是独立的,但第三行是不同的物种,后面的行与第三行相同但位置不同。第五行,所有数据与上一行相同,只是又是相隔59分钟。
由此产生的结果应该返回前两行(两者相互独立), 第三行,因为它独立于前行和后行(因为物种不同 从前一行到后一行的不同位置),然后是第四行 与之前的行无关,最后一行不应显示在数据子集上 不独立于之前的线路(相隔
Location Site Species Date Time
Twelve 2 frog 14-10 13:45
Twelve 2 frog 14-10 14:45
Twelve 2 badger 14-10 15:44
Thirteen 2 badger 14-10 16:44
Thirteen 2 badger 14-10 17:42
【问题讨论】:
-
对不起,如果有人可以帮忙提供解决方案,应该添加,因为我有大量数据需要使用解决方案
-
这对您的问题有帮助吗?
-
@ChuckP 你在下面看到我的 cmets 了吗?
-
对不起,我以为这早就死了。下面回答了
标签: r if-statement subset