我在R中使用dplyr包,并将我的数据分组为3个变量(Year,Site,Brood).
我想摆脱少于3行的组.例如,在以下示例中,我想删除brood'2'的行.我有很多数据可以做到这一点,所以虽然我可以手工做到这一点,但使用R自动化它会很有帮助.
Year Site Brood Parents
1996 A 1 1
1996 A 1 1
1996 A 1 0
1996 A 1 0
1996 A 2 1
1996 A 2 0
1996 A 3 1
1996 A 3 1
1996 A 3 1
1996 A 3 0
1996 A 3 1
Run Code Online (Sandbox Code Playgroud)
我希望这是有道理的,并且非常感谢您的帮助!我是R和stackoverflow的新手,如果我说这个问题的方式不是很好,那么道歉!如果我需要提供任何其他信息,请与我们联系.
我想对我的数据框进行子集化,以便仅保留在不同日期有3个或更多观察值的组.我想摆脱少于3次观察的群体,或者他们所拥有的观察不是来自3个不同的日子.
这是一个示例数据集:
Group Day
1 1
1 3
1 5
1 5
2 2
2 2
2 4
2 4
3 1
3 2
3 3
4 1
4 5
Run Code Online (Sandbox Code Playgroud)
因此,对于上面的示例,将保留组1和组3,并且将从数据帧中移除组2和组4.
我希望这是有道理的,我想解决方案将非常简单,但我无法解决它(我对R很新,并且不会很快就提出这样的解决方案).我想也许diff功能可以派上用场,但是没有进一步发展,我没有任何运气在SO和其他网站上搜索现有问题以获得答案.
非常感谢你提前!
我在R中使用dplyr对数据进行了分组.我希望在每组中最后一次观察('B')等于或大于1(1,2,3或4)之后找到'日期'('A' ").换句话说,1/2/3/4变为0的'日期'.
简单地找到第一次出现0的日期将不起作用,因为在某些组1/2/3/4切换到0然后再次返回并且不给出我想要的结果.
我希望每个组的"日期"在新列('date.after')中给出.
例如,给定以下数据样本,按A分组(这已经简化,我的数据实际上按3个变量分组):
A B date
a 2 1
a 2 2
a 1 5
a 0 8
b 3 1
b 3 4
b 3 6
b 0 7
b 0 9
c 1 2
c 1 3
c 1 4
Run Code Online (Sandbox Code Playgroud)
我想实现以下目标:
A B date date.after
a 2 1 8
a 2 2 8
a 1 5 8
a 0 8 8
b 3 1 7
b 3 4 7
b 3 6 7
b 0 7 …Run Code Online (Sandbox Code Playgroud)