gpt4 book ai didi

r - 使用等级 (R) 处理关系

转载 作者:行者123 更新时间:2023-12-05 00:55:06 25 4
gpt4 key购买 nike

我正在尝试为 child 是否是第一次出生以及 child 是否是第二次出生创建虚拟变量。我的数据看起来像这样

ID   MID   CMOB   CYRB      
1 1 1 1991
2 1 7 1989
3 2 1 1985
4 2 11 1985
5 2 9 1994
6 3 4 1992
7 4 2 1992
8 4 10 1983

ID = child ID,MID = 母亲 ID,CMOB = 出生月份,CYRB = 出生年份。

对于第一个出生的假人,我尝试使用它:
Identifiers_age <- Identifiers_age %>% group_by(MPUBID) 
%>% mutate(first = as.numeric(rank(CYRB) == 1))

但是似乎没有办法通过另一个列的排名来打破关系(显然在这种情况下,所需的列是 CMOB),每当我尝试使用“ties.method”参数时,它都会告诉我输入必须是字符向量。

我在这里错过了什么吗?

最佳答案

order在这里使用可能更方便,来自 ?order :

order returns a permutation which rearranges its first argument into ascending or descending order, breaking ties by further arguments.


Identifiers_age <- Identifiers_age %>% group_by(MID) %>% 
mutate(first = as.numeric(order(CYRB, CMOB) == 1))
Identifiers_age

#Source: local data frame [8 x 5]
#Groups: MID [4]

# ID MID CMOB CYRB first
# <int> <int> <int> <int> <dbl>
#1 1 1 1 1991 0
#2 2 1 7 1989 1
#3 3 2 1 1985 1
#4 4 2 11 1985 0
#5 5 2 9 1994 0
#6 6 3 4 1992 1
#7 7 4 2 1992 0
#8 8 4 10 1983 1

关于r - 使用等级 (R) 处理关系,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/38804880/

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