📅  最后修改于: 2023-12-03 14:52:57.720000             🧑  作者: Mango
在 Pandas 中,可以通过多种方法合并两个 DataFrame,其中一种是在索引上合并。索引合并是基于 DataFrame 的索引进行操作,通过将两个 DataFrame 的索引进行匹配,将它们合并成一个新的 DataFrame。
以下是在索引上合并两个 Pandas DataFrame 的方法:
concat()
函数concat()
函数可以在指定的轴上将两个或多个 DataFrame 连接在一起。在索引上合并时,需要设置参数 join='inner'
,以保留只存在于两个 DataFrame 索引交集部分的数据。
import pandas as pd
# 创建示例 DataFrame
df1 = pd.DataFrame({'A': [1, 2, 3], 'B': [4, 5, 6]}, index=[0, 1, 2])
df2 = pd.DataFrame({'C': [7, 8, 9], 'D': [10, 11, 12]}, index=[1, 2, 3])
# 在索引上合并两个 DataFrame
merged_df = pd.concat([df1, df2], axis=1, join='inner')
print(merged_df)
输出结果:
A B C D
1 2 5 7 10
2 3 6 8 11
merge()
函数merge()
函数可以基于列或索引的值将两个 DataFrame 进行合并。在索引上合并时,需要设置参数 left_index=True
和 right_index=True
,以使用索引作为合并的键。
import pandas as pd
# 创建示例 DataFrame
df1 = pd.DataFrame({'A': [1, 2, 3], 'B': [4, 5, 6]}, index=[0, 1, 2])
df2 = pd.DataFrame({'C': [7, 8, 9], 'D': [10, 11, 12]}, index=[1, 2, 3])
# 在索引上合并两个 DataFrame
merged_df = pd.merge(df1, df2, left_index=True, right_index=True)
print(merged_df)
输出结果:
A B C D
1 2 5 7 10
2 3 6 8 11
通过以上两种方法,可以根据索引将两个 Pandas DataFrame 进行合并,获得合并后的 DataFrame。可以根据具体的需求选择适合的方法进行操作。