我有两个数据帧
df1:
StartLocation,StartDevice,StartPort,EndLocation,EndDevice,EndPort,LinkType,Speed
DD1,Switch1,P1,AD1,Switch2,P2,MTP,1000
DD2,Switch2,P3,AD2,Switch3,P2,MTP,1000
DD3,Switch3,P5,AD3,Switch4,P6,MTP,1000
df2:
StartLocation,StartDevice,StartPort,EndLocation,EndDevice,EndPort
AB11,RU15,P1,AJ11,RU25,P2
AB12,RU18,P2,AB11,RU35,P2
AB13,RU19,P3,AB11,RU40,P4
我想交错两个数据帧,我已经尝试了一些选项,但似乎无法让它工作。我很接近下面代码的功能,但它没有加入到相应的列中
import pandas as pd
from toolz import interleave
df3 = pd.DataFrame(interleave([df1.values, df2.values]), columns=df1)
预期的产出将是
StartLocation,StartDevice,StartPort,EndLocation,EndDevice,EndPort,LinkType,Speed
DD1,Switch1,P1,AD1,Switch2,P2,MTP,1000
AB11,RU15,P1,AJ11,RU25,P2,nan,nan
DD2,Switch2,P3,AD2,Switch3,P2,MTP,1000
AB12,RU18,P2,AB11,RU35,P2,nan,nan
DD3,Switch3,P5,AD3,Switch4,P6,MTP,1000
AB13,RU19,P3,AB11,RU40,P4,nan,nan
我觉得应该很简单,但我找不到合适的语法。有人能提出一些想法吗
提前感谢您的帮助
如果列名相同,唯一的区别是其中一个DataFrame中的一些新列名可能使用:
对于任何列名称,更通用的解决方案是使用^{} before防止每个数据帧的列正确对齐:
关于^{} 和^{} 的另一个想法是:
相关问题 更多 >
编程相关推荐