df = pd.DataFrame({'id': [1,1,2,2,2,3,3,4,4,4,5,5,6,6],
'rank' : [1,2,1,2,3,1,2,1,2,3,1,2,1,2],
'age' : [20,2,30,28,4,26,3,22,23,1,34,29,56,25],
'sex' : ['female','female','male','female','male','female','male','female','male','male','male','female','female','female'],
'care' : [np.nan,np.nan,3,np.nan,np.nan,2,np.nan,np.nan,3,np.nan,np.nan,np.nan,2,np.nan]})
大家好,上表包含以下变量:
所以我想创建一个名为new的变量,它包含在家中接受护理的人的年龄。我正试图在Python3.8中实现这一点
我在Stata用这个命令做了这个练习:
rangestat new = age, by(id) int(rank care care)
在rtudio也这样做:
df <- df %>%
group_by(id) %>%
mutate(new = age[match(care, rank)]) %>%
ungroup
我希望我已经让自己明白,也不会造成不便,我提前感谢你
你想要这样的吗
试试这一行:
结果正是您想要的:
相关问题 更多 >
编程相关推荐