gpt4 book ai didi

r - 如何删除R中包含少于3行数据的组?

转载 作者:行者123 更新时间:2023-12-03 15:52:55 24 4
gpt4 key购买 nike

这个问题在这里已经有了答案:





Subset data frame based on number of rows per group

(4 个回答)


4年前关闭。




我在 R 中使用 dplyr 包,并按 3 个变量(Year、Site、Brood)对我的数据进行分组。

我想摆脱由少于 3 行组成的组。例如,在下面的示例中,我想删除育雏“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

我希望这是有道理的,非常感谢您的帮助!我是 R 和 stackoverflow 的新手,如果我提出这个问题的方式不太好,我深表歉意!如果我需要提供任何其他信息,请告诉我。

最佳答案

一种方法是使用魔法 n()内函数filter :

library(dplyr)

my_data <- data.frame(Year=1996, Site="A", Brood=c(1,1,2,2,2))

my_data %>%
group_by(Year, Site, Brood) %>%
filter(n() >= 3)
n()函数给出当前组中的行数(如果没有分组,则给出总行数)。

关于r - 如何删除R中包含少于3行数据的组?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/35271988/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com