如何在Pandas中合并数据帧?
为了在Pandas中合并数据帧,我们将展示一些示例。我们可以轻松地在Pandas中合并数据帧甚至系列。Pandas是一个开源的Python库,它提供了高性能的数据操作和分析工具,使用其强大的数据结构。数据帧是一个二维数据结构,即数据按行和列以表格形式对齐。
使用内部连接合并数据帧
示例
让我们在Python中使用内部连接合并数据帧
import pandas as pd
# 创建字典
dct1 = {'Player':['Jacob','Steve','David','John','Kane'], 'Age':[29, 25, 31, 26, 27]}
dct2 = {'Rank':[1,2,3,4,5], 'Points':[100,87, 80,70, 50]}
# 使用pandas.dataframe()从字典元素创建DataFrame
df1 = pd.DataFrame(dct1)
df2 = pd.DataFrame(dct2)
print("DataFrame1 = \n",df1)
print("\nDataFrame2 = \n",df2)
# 使用内部连接合并数据帧
res = pd.concat([df1, df2], axis=1, join='inner')
print("\n合并后的数据帧 = \n",res)
输出
DataFrame1 =
Player Age
0 Jacob 29
1 Steve 25
2 David 31
3 John 26
4 Kane 27
DataFrame2 =
Rank Points
0 1 100
1 2 87
2 3 80
3 4 70
4 5 50
合并后的数据帧 =
Player Age Rank Points
0 Jacob 29 1 100
1 Steve 25 2 87
2 David 31 3 80
3 John 26 4 70
4 Kane 27 5 50
使用append()合并数据帧
示例
在这个例子中,我们将使用append()来合并数据帧。
导入 pandas 为 pd
# 创建字典
dct1 = {'玩家':['Steve','David'], '年龄':[29, 25,]}
dct2 = {'玩家':['John','Kane'], '年龄':[31, 27]}
# 使用 pandas.dataframe()从字典元素创建DataFrame
df1 = pd.DataFrame(dct1)
df2 = pd.DataFrame(dct2)
print("DataFrame1 = \n",df1)
print("\nDataFrame2 = \n",df2)
# 使用append()组合DataFrame
res = df1.append(df2)
print("\n组合的 DataFrame = \n",res)
输出
DataFrame1 =
玩家 年龄
0 Steve 29
1 David 25
DataFrame2 =
玩家 年龄
0 John 31
1 Kane 27
组合的 DataFrame =
玩家 年龄
0 Steve 29
1 David 25
0 John 31
1 Kane 27
使用concat()组合DataFrames
示例
在本示例中,我们将使用Python的concat()函数组合数据框架
import pandas as pd
# Create Dictionaries
dct1 = {'玩家':['Steve','David'], '年龄':[29, 25,]}
dct2 = {'玩家':['John','Kane'], '年龄':[31, 27]}
# 使用 pandas.dataframe()从字典元素创建DataFrame
df1 = pd.DataFrame(dct1)
df2 = pd.DataFrame(dct2)
print("DataFrame1 = \n",df1)
print("\nDataFrame2 = \n",df2)
# 使用concat()组合DataFrame
res = pd.concat([df1, df2])
print("\n组合的 DataFrame = \n",res)
输出
DataFrame1 =
玩家 年龄
0 Steve 29
1 David 25DataFrame2 =
玩家 年龄
0 John 31
1 Kane 27
组合的 DataFrame =
玩家 年龄
0 Steve 29
1 David 25
0 John 31
1 Kane 27