Используя pivot_table, теперь вы получаете как True, так и False
pivot_table
df.pivot_table('Speed','ID','Geo',aggfunc='mean') Out[154]: Geo False True ID 123 45 60 456 25 85