我有一个 MultiIndex pandas DataFrame,如下所示:
df = pandas.DataFrame({"index": ["a", "a", "a", "b", "b", "b"], "id": [1,2,3,4,5,6], "name": ["jim", "jim", "jim", "bob", "bob", "bob"], "date":['12/5/1999','12/6/1999','18/4/2000','12/4/2006','14/9/2007','16/4/2008']}).set_index("index")
它代表人们在不同的时间发生了哪些事件。我想添加一个新列 date_order,它根据事件发生的日期为每个索引中的每一行顺序增加一个新值。每个事件都发生了。也就是说,每个人都会有一个按事件发生顺序分配的日期顺序值,从 1 开始,并在每个较旧的事件处增加。
这就是我想要结束的。
index id name date date_order
a 1 jim 12/5/1999 3
a 2 jim 12/6/1999 2
a 3 jim 18/4/2000 1
b 4 bob 12/4/2006 3
b 5 bob 14/9/2007 2
b 6 bob 16/4/2008 1
我首先添加了一个 date_order 列data['date_order'] = 1
,然后我认为我可以使用 lambda 函数和 map 函数使用迭代器递增。
这对我来说效果不佳。
非常感谢您朝着正确的方向迈进。谢谢。