在向Pandas数据帧中添加一个新列时,我面临着一个问题:我有一个数据帧,其中每一行表示一个位置数据记录和一个时间戳。这些记录属于trips,因此每一行还包含一个trip id
TripID Lat Lon time
0 42 53.55 9.99 74
1 42 53.58 9.99 78
3 42 53.60 9.98 79
6 12 52.01 10.04 64
7 12 52.34 10.05 69
现在,我想删除所有旅行的记录,这些旅行的记录少于它们的最小数量。我想我可以简单地得到每次旅行的记录数,比如:
lengths = df['TripID'].value_counts()
然后,我的想法是向数据帧添加一个额外的列,并用与每条记录的trip id对应的序列中的值填充它。然后我就可以去掉length
列值太小的所有行。你知道吗
但是,我似乎找不到将长度值放入正确行的方法。有没有人对此有想法,甚至有更好的方法来解决整个问题?你知道吗
非常感谢!你知道吗
编辑:
我想要的输出应该是这样的:
TripID Lat Lon time length
0 42 53.55 9.99 74 3
1 42 53.58 9.99 78 3
3 42 53.60 9.98 79 3
6 12 52.01 10.04 64 2
7 12 52.34 10.05 69 2
我设法找到了一个比我原来的方法更好的答案:
这可以在Pandas documentation中找到。它去除了所有包含2个或更少元素的组,或者在我的例子中是2个记录或更短的trip。你知道吗
我希望这也能帮助其他人。你知道吗
相关问题 更多 >
编程相关推荐