【发布时间】:2021-07-15 14:41:51
【问题描述】:
我有一个 pandas 数据框,其中包含给定日期和用户的一些指标。
>>> pd.DataFrame({"user": ['juan','juan','juan','gonzalo'], "date": [1, 2, 3, 1], "var1": [1, 2, None, 1], "var2": [None, 4, 5, 6]})
user date var1 var2
0 juan 1 1.0 NaN
1 juan 2 2.0 4.0
2 juan 3 NaN 5.0
3 gonzalo 1 1.0 6.0
现在,对于每个用户,我想为每个变量(var1、var2)提取 2 个更新的值,忽略 NaN,除非没有足够的值来填充数据。
作为参考,这应该是上述数据的结果数据框
user var1_0 var1_1 var2_0 var2_1
juan 2.0 1.0 5.0 4.0
gonzalo 1.0 NaN 6.0 NaN
每个“历史”值都被添加为带有_0 或_1 后缀的新列。
【问题讨论】:
-
是
date要排序以获取最近的列还是行顺序?