Python Pandas Merge不起作用

时间:2017-01-18 21:33:26

标签: python pandas dataframe merge

我有两个Python Pandas DataFrames:

Inventory_Info(20行):

Group, Facility, Unit, Room, HardwareAddress
'Generic Hospital Group', 'Generic Hospital', 'Generic Hospital Ward', 'Generic Hospital Room', 5715

Data(47行):

Serial_Number, Last_Server_Check, Num_Check_Ins, HardwareAddress
00BA0F42, 23, 1/18/17 20:38, 3906

Inventory_Info.HardwareAddress的所有20个值都显示在Data.HardwareAddress

我试过这个,但它没有合并数据。我从两个DataFrame中获取列名,但只包含Data的内容。

finalDataSet = pandas.DataFrame.merge(Data, Inventory_Info, how='left', on='HardwareAddress')

同样,我尝试过翻转DataFrame订单:

finalDataSet = pandas.DataFrame.merge(Inventory_Info, Data, how='left', on='HardwareAddress')

我得到合并的列名,但现在只显示Inventory_Info数据。

我尝试过使用这种合并语法:

finalDataSet = webData.merge(rawData, left_index='HardwareAddress', right_on='HardwareAddress')

虽然此语法将数据转换为正确的格式并填充所有列,但HardwareAddress索引上的数据不匹配,并且其排列错误。

1 个答案:

答案 0 :(得分:1)

我终于解决了这个问题。

Inventory_Info.dtypesData.dtypes均显示HardwareAddress类型为object。我使用了Data['HardwareAddress'].astype(int)Inventory_Info['HardwareAddress'].astype(int),然后DataFrames完全按预期合并。