选择给定月份中值的第一个和最后一个出现

艾伯纳·马可拉

我有一个数据集,该数据集记录了给定月份中某个ID组成的组中的更改。在示例中,7月,ID 5从组2更改为组1,然后从组1更改为2,依此类推。我只需要获取此ID /月中的第一个和最后一个更改。

ID  groupTO groupFROM   MONTH
5   2   1   6
5   1   2   7
5   2   1   7
5   3   2   7
5   1   3   7
5   2   1   8
5   1   2   8
5   2   1   8
6   1   2   6
6   3   1   6
6   2   1   7
6   3   2   8
6   1   3   8

在这种情况下,我需要的结果是:

ID  groupTO groupFROM   MONTH
5   2   1   6
5   1   2   7
5   1   3   7
5   2   1   8
5   2   1   8
6   1   2   6
6   3   1   6
6   2   1   7
6   3   2   8
6   1   3   8

如果删除重复项(ID / MONTH),则可以第一次出现,但是如何得到最后一个?

Nareman Darwish |

这是您使用dplyr的一种简单方法;

library(dplyr)

# Create data
dt <- 
  data.frame(Id = c(rep(5, 8), rep(6, 5)), 
             groupTO = c(2, 1, 2, 3, 1, 2, 1, 2, 1, 3, 2, 3, 1),
             groupFROM = c(1, 2, 1, 2, 3, 1, 2, 1, 2, 1, 1, 2, 3),
             MONTH = c(6, 7, 7, 7, 7, 8, 8, 8, 6, 6, 7, 8, 8))

dt %>%
  # Group by ID and month
  group_by(Id, MONTH) %>%
  # Get first and last row
  slice(c(1, n())) %>%
  # To remove cases where first is same as last
  distinct()

# # A tibble: 9 x 4
# # Groups:   Id, MONTH [6]
# Id groupTO groupFROM MONTH
# <dbl>   <dbl>     <dbl> <dbl>
# 5       2         1     6
# 5       1         2     7
# 5       1         3     7
# 5       2         1     8
# 6       1         2     6
# 6       3         1     6
# 6       2         1     7
# 6       3         2     8
# 6       1         3     8

本文收集自互联网,转载请注明来源。

如有侵权,请联系 [email protected] 删除。

编辑于
0

我来说两句

0 条评论
登录 后参与评论

相关文章

PHP 数组中值出现的第一个和最后一个索引

如何从给定的数值月份中获取月份的第一个和最后一个日期PHP

计算第一个和最后一个出现的数字之间的NA

Matlab:查找向量中元素的第一个和最后一个出现?

删除第一个和最后一个出现列值的行

蜂巢:字符串中的第一个和最后一个出现

如何选择<tr>中的第一个和最后一个<td>?

如何通过XPath选择第一个和最后一个元素?

每天选择第一个和最后一个事件用户user

选择数据集中的第一个,最后一个和单个观测值

选择部分的第一个和最后一个时间戳

如何让PHP特定月份一周的第一个和最后日期

基于一年的月份的第一个和最后一个日期的列表

函数返回当前月份的第一个星期几和最后一个星期几

如何在Android Datepicker中获取月份的第一个和最后一个日期

通过CSS选择器选择所有HTML中的标记的第一个和最后一个出现

计算给定时间段内第一个和最后一个条目相等

检查第一个和最后一个字符是否包含给定的特殊字符

获取给定时间跨度的第一个和最后一个条目

我如何从月份和年份中获取第一个日期和最后一个日期 |Excel |用于月份和年份的微调器|

选择数组中N个均匀间隔的元素,包括第一个和最后一个

在一组Labtest中选择第一个和最后一个测试

减少ndarray的第一个维度-保留第一个和最后一个元素

变量出现在我的数据框中的第一个和最后一个日期

如何有效访问满足熊猫条件的第一个和最后一个出现索引

如何识别列中的第一个和最后一个出现并记录位置?

查找数据集SQL中ID出现的第一个和最后一个日期

在Python列表中查找元素的第一个和最后一个出现的最佳方法是什么?

打印链接列表时,最后一个元素值出现在第一个和最后一个位置