gpt4 book ai didi

根据规则集删除重复的观察结果

转载 作者:行者123 更新时间:2023-12-03 14:34:20 26 4
gpt4 key购买 nike

我试图根据我的变量id从数据集中删除重复的观察值。但是,我希望删除观察结果基于以下规则。以下变量是id,户主的性别(1个男性,2个女性)和户主的年龄。规则如下。如果一个家庭有男户主和女户主,则删除女户主的观察结果。如果一个家庭由两个男户主或两个女户主组成,则删除年轻户主的观察结果。下面是一个示例数据集。

id = c(1,2,2,3,4,5,5,6,7,8,8,9,10)
sex = c(1,1,2,1,2,2,2,1,1,1,1,2,1)
age = c(32,34,54,23,32,56,67,45,51,43,35,80,45)
data = data.frame(cbind(id,sex,age))

最佳答案

为此,您可以先对data.frame排序,以便首先为每个id输入所需的条目,然后删除带有重复的id的行。

d <- with(data, data[order(id, sex, -age),])
# id sex age
# 1 1 1 32
# 2 2 1 34
# 3 2 2 54
# 4 3 1 23
# 5 4 2 32
# 7 5 2 67
# 6 5 2 56
# 8 6 1 45
# 9 7 1 51
# 10 8 1 43
# 11 8 1 35
# 12 9 2 80
# 13 10 1 45
d[!duplicated(d$id), ]
# id sex age
# 1 1 1 32
# 2 2 1 34
# 4 3 1 23
# 5 4 2 32
# 7 5 2 67
# 8 6 1 45
# 9 7 1 51
# 10 8 1 43
# 12 9 2 80
# 13 10 1 45

关于根据规则集删除重复的观察结果,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/15576776/

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