Python中Dataframe对象如何将两个具有相同列名的表叠加起来,从行上叠加起来,组成一个表。
例如,有两个表,表的列名是相同的。如何将一个条的记录添加的另一个表的记录下面,形成一个新的表?
举个例子,有两个dataframe对象,df1、df2,构建函数如下:
df1=pd.DataFrame(np.arange(16).reshape(4,4),
index = pd.date_range('20200101', periods = 4),
columns=list('ABCD'))
df2=pd.DataFrame(np.arange(6,22).reshape(4,4),
index = pd.date_range('20200101', periods = 4),
columns=list('ABCD'))
打印出来看一下df1和df2的结构:
df1的样子:
df2的样子:
可以看到df1和df2的列名是相同的,如果我想将两个表的内容放到一个表中去。也就是两个4条记录的包,组合成1个8条记录的表,应该如何操作呢?
方法一、这时可以使用concat函数。pd.concat([df1,df2], axis=0)
结果如下:
可以看到df1和df2从竖向上合并成了一个表了。如果想在横向上组成一个表呢?只要吧axis=1就可以了。
二、方法2:使用append函数。
df1.append(df2这个方式是最简答的一个实现方式,并且可以添加形参df1.append(df2, ignore_index = False)。忽略两个dataframe对象的index。