如何在 Pandas 中附加两个 DataFrame?
要将一个数据帧的行附加到另一个数据帧的行,我们可以使用Pandasappend()函数。在的帮助下append(),我们也可以附加列。让我们举个例子,看看如何使用这个方法。
步骤
创建二维、大小可变、潜在异构的表格数据df1。
打印输入数据帧,df1。
使用相同的列名创建另一个DataFramedf2并打印它。
使用附加方法df1.append(df2,ignore_index=True)将df2的行附加到df2。
打印resultatntDataFrame。
示例
import pandas as pd df1 = pd.DataFrame({"x": [5, 2], "y": [4, 7], "z": [9, 3]}) df2 = pd.DataFrame({"x": [1, 3], "y": [1, 9], "z": [29, 30]}) print "Input DataFrame 1 is:\n", df1 print "Input DataFrame 2 is:\n", df2 df3 = df1.append(df2, ignore_index=True) print "After appending, DataFrame is: \n", df3输出结果
Input DataFrame 1 is: x y z 0 5 4 9 1 2 7 3 Input DataFrame 2 is: x y z 0 1 1 29 1 3 9 30 After appending, DataFrame is: x y z 0 5 4 9 1 2 7 3 2 1 1 29 3 3 9 30
现在,让我们为数据帧使用不同的列名,并使用append()没有ignore_index参数的函数。ignore_index的默认值为False。
import pandas as pd df1 = pd.DataFrame({"x": [5, 2], "y": [4, 7], "z": [9, 3]}) df2 = pd.DataFrame({"a": [1, 3], "b": [1, 9], "c": [29, 30]}) print "Input DataFrame 1 is:\n", df1 print "Input DataFrame 2 is:\n", df2 df3 = df1.append(df2) print "After appending, DataFrame is: \n", df3
现在,它将产生以下输出
Input DataFrame 1 is: x y z 0 5 4 9 1 2 7 3 Input DataFrame 2 is: a b c 0 1 1 29 1 3 9 30 After appending, DataFrame is: x y z a b c 0 5.0 4.0 9.0 NaN NaN NaN 1 2.0 7.0 3.0 NaN NaN NaN 0 NaN NaN NaN 1.0 1.0 29.0 1 NaN NaN NaN 3.0 9.0 30.0