我有一个包含多个个体和每个个体的多个观察值的熊猫数据框——下面数据框的前三列(Id、Date、Termination)。每个人的观察次数不是固定的。也就是说,有时有1个,有时有2个,有时有3个等等。数据按下面的顺序排列(即所有与个体有关的观察都放在一起,个体相互叠加)。你知道吗
我想建造第四纵队,持续时间。如果观察不是该个人的最后一次,则持续时间等于下一次观察的日期减去当前观察的日期。即,第一个值267=1/05/2010-7/08/2009,第二个值365=1/05/2011-1/05/2010。如果观察是该个人的最后一次,则持续时间等于终止日期减去该日期。也就是说,第三个值463=6/08/2012-1/05/2011。你知道吗
如何在python中实现这一点?抱歉,这里的python新手,我不知道用Google来开始这个。。。你知道吗
df = pd.DataFrame({
'ID':['AE871161', 'AE871161', 'AE871161', 'AE871164', 'AE871164', 'AE871188', 'AE871188', 'AE871188'],
'Date':['7/08/2009', '1/05/2010', '1/05/2011', '31/07/2010', '31/07/2011', '1/06/2009', '14/06/2010', '13/06/2011'],
'Termination':['6/08/2012', '6/08/2012', '6/08/2012', '15/07/2012', '15/07/2012', '10/06/2012', '10/06/2012', '10/06/2012']
})
我认为您需要^{} 替换为} 减去} 最后将timedelta转换为天:
Termination
列中每个组最后丢失的值,然后用^{Date
和^{相关问题 更多 >
编程相关推荐