繁体   English   中英

在python中连接两个具有相同行数的数据帧

[英]Concatenating two data-frames having same number of rows in python

我正在从两个不同的 excel 文件中获取数据,如下所示,

df = pd.read_excel('abc.xlsx')

我正在从名为 df 的上述数据框中提取特定数据,如下所示,

df1 = df[df['COMPTYPE'].astype(str).str.contains('MCCB|ACB|Contactor', regex=True)]

之后,我有另一个名为 df2 的数据框,如下所示,

df2 = pd.read_excel('inputfile.xlsx')

df 有 49 行,df1 和 df2 有 31 行。 我在axis = 1上连接df1和df2,如下所示,

data = pd.concat([df2, df1], axis=1)

所以在这里我预计最终数据帧“数据”将有 31 行但是我得到 43 行,显然,df1 有一些我无法检测到的空行,并且这些空行被添加到最终数据帧在执行 pd.concat() 操作时,因此是 43 行而不是 31 行。 以下图片将向您展示数据在 excel 文件中的情况, abc.xlsx 文件截图inputfile screenshot请帮助。

尝试这个

newdf = pd.concat([df2.reset_index(drop=True),df1.reset_index(drop=Tru‌​e)], axis=1)

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM