如何在Pandas中从另一个DataFrame中添加列
在这篇文章中,我们将讨论如何在Pandas中从另一个DataFrame中添加一个列。
方法1:使用join()
使用这种方法,要添加到第二个数据框架中的列首先是使用其名称从第一个数据框架中提取。在这里,提取的列已经被分配给一个变量。
语法: dataframe1[“name_of_the_column”]
在提取之后,需要使用join()函数将该列简单地添加到第二个数据框中。
语法: Dataframe2.join(“variable_name”)
调用这个函数时,需要参考要添加列的数据框架,并将存储提取的列名的变量名作为参数传递给它。因此,该列将被添加到第二个数据框架的末尾,其名称与前一个数据框架中的相同。
示例:
import pandas as pd
df1 = pd.DataFrame({"Col1": [1, 2, 3],
"Col2": ["A", "B", "C"],
"Col3": ["geeks", "for", "geeks"]})
print("First dataframe:")
display(df1)
df2 = pd.DataFrame({"C1": [4, 5, 6],
"C2": ["D", "E", "F"]})
print("Second dataframe:")
display(df2)
extracted_col = df1["Col3"]
print("column to added from first dataframe to second:")
display(extracted_col)
df2 = df2.join(extracted_col)
print("Second dataframe after adding column from first dataframe:")
display(df2)
输出:
方法2:使用insert()
这个方法和上面一样–首先提取要添加的列并将其分配给一个变量,然后添加到另一个数据框中。这里的区别是,这种方法可以自由地将列放在任何地方,如果需要的话,还可以使用不同的列名。
语法: insert(location, “new_name”, “extarcted_column” )
在这里,希望插入的列的索引被用来代替位置。new_name可以用列应该被重新命名的名字代替,extracted_column是来自第一个数据框架的列。
示例:
import pandas as pd
df1 = pd.DataFrame({"Col1": [1, 2, 3],
"Col2": ["A", "B", "C"],
"Col3": ["geeks", "for", "geeks"]})
print("First dataframe:")
display(df1)
df2 = pd.DataFrame({"C1": [4, 5, 6],
"C2": ["D", "E", "F"]})
print("Second dataframe:")
display(df2)
extracted_col = df1["Col3"]
print("column to added from first dataframe to second:")
display(extracted_col)
df2.insert(1, "C3", extracted_col)
print("Second dataframe after adding column from first dataframe:")
display(df2)
输出: