我有一个DataFrame
带有列time
、、latitude
和longitude
。它看起来像这样:
>>> df.head()
time latitude longitude
0 2011-12-16 08:09:07 42.386391 -71.013544
1 2011-12-16 08:09:08 42.386391 -71.013544
2 2011-12-16 08:09:09 42.386391 -71.013544
3 2011-12-16 08:09:10 42.386391 -71.013544
4 2011-12-16 08:09:11 42.386391 -71.013544
我想做的是估计一个人住在哪里。最简单的方法是在一天中最早的时刻获取他们所在位置的模式(最常见的)。
我的数据框有超过 700,000 行,跨越大约 3 个月,每天每秒 4-8 小时的数据!所以我需要做的是从每天的前几秒钟找到最常见的(纬度,经度)对。
如果我想使用整个数据集而不仅仅是每天的前几秒钟,我可以执行以下操作:
l = []
for i in range(len(df)-1):
l.append((df.latitude[i],df.longitude[i]))
import collections
answer = collections.Counter(l).most_common(1)
这可能是也可能不是最有效的方法,如果您有更好的方法可行,请随时在您的答案中使用它。重要的部分是我只取每天的前几个值。
谢谢你。
注意:每天的开始时间各不相同。