我有一个多索引数据帧,如下所示:
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\u 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
我首先在这个data['date_order'] = 1
中添加了一个日期顺序列,然后我想我可以使用lambda函数和map函数用迭代器递增。你知道吗
这对我来说不太好。你知道吗
在正确的方向踢做这将是非常感谢。 谢谢。你知道吗
使用具有重复值的索引不是一个好主意。如果您不为
DataFrame
对象调用.set_index("index")
,下面是解决方案。你知道吗相关问题 更多 >
编程相关推荐