我有一个代码,可以在现有的csv
文件中添加一列。当我第一次运行它时效果很好但是当我重新运行代码时它会创建两个新列SupplyDelay_x
和SupplyDelay_y
,但我希望它只覆盖现有列。这可能吗?
import math
supply_delay = abs(purchase_data['DeliveryDate'] - purchase_data['Date'])
SupplyDelay= pd.DataFrame({'SupplyDelay': supply_delay})
purchase_data = purchase_data.merge(SupplyDelay, left_index = True, right_index = True)
purchase_data.to_csv('Lokad_PurchaseOrders.csv')
purchase_data
预期产出
答案 0 :(得分:1)
您正在使用基于密钥=供应延迟的合并。如果您想使用合并,则取代供应延迟使用密钥列。当前发生的是当您第一次使用合并时,在数据框中创建新列并且在第二次运行时,使用前一列作为键创建另一列,因此当列名相同时,python会自动在列名后添加_x和_y.Hope很清楚你在哪里做错了