我有2个数据:
我需要在交易数据中创建列“ item_category_id”。
transactions['item_category_id'] = 0
s=0
for i in transactions.item_id:
transactions['item_category_id'][s] = items.loc[items['item_id'] == i].item_category_id
s+=1
但是此代码工作时间太长。请帮忙=)
答案 0 :(得分:1)
您可以使用pandas.merge
做您想做的事情(假设transactions
和items
是两个熊猫数据框):
import pandas
transactions = pandas.merge(transactions, items[["item_id", "item_category_id"]], on="item_id", how="left")
答案 1 :(得分:0)
您可以尝试:
transactions.merge(items[['item_id', 'item_category_id']], on='item_id')
这避免了显式循环,并允许pandas
使用更有效的代码。