求助:pandas 在使用两次merge后无法进行apply
在dataframe进行两次merge后,利用apply使用函数,程序一直运行,无法输出
t = user_shop[['user_id','shop_id','longitude','latitude']]
t.rename(columns={'longitude':'user_longitude','latitude':'user_latitude'}, inplace=True)
t1 = shop_info[['shop_id','mall_id','longitude','latitude']]
t1.rename(columns={'longitude':'shop_longitude','latitude':'shop_latitude'}, inplace=True)
t2 = pd.merge(t,t1[['shop_id','mall_id']],on=['shop_id'],how='left')
t1.rename(columns={'shop_id':'shop_id_same_mall'}, inplace=True)
t3 = pd.merge(t2,t1,on=['mall_id'],how='left')
def cal_dis(a):
return a['user_id']
t3['distance'] = t3.apply(cal_dis, axis=1)
print (t3.loc[1:10])
可是在分别使用t,t1和merge过一次的t2代替t3时,都会有结果输出,只有进行两次merge的t3始终得不到输出,请问问题到底出在哪里了呢?
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(1)