首页 > 解决方案 > 如果ID之前取消订单,请填写True/False

问题描述

超级简单的请求,但我对我的尝试感到沮丧:我得到了一个取消订单的用户列表 cancelled.csv,我想在我的 transactions.csv 中创建一个名为“UNRELIABLE”的新列并插入“True”或如果“user_id”在 cancelled.csv 中匹配,则为“False”(1,0 也可以)。谢谢!

标签: pythonpandasdataframe

解决方案


您可以在此代码段中使用“isin”:

import pandas as pd

transactions = pd.DataFrame({'id': [1,2,3,4,5,6], 'username': list('abcdef')})
cancelled = pd.DataFrame({'id': [2,3], 'username': list('bc')})

transactions['Unreliable'] = transactions['id'].isin(cancelled['id'])
transactions['Reliable']   = ~transactions['id'].isin(cancelled['id'])

transactions.head()

推荐阅读