📅  最后修改于: 2023-12-03 15:37:25.622000             🧑  作者: Mango
当你需要将两个 Pandas 数据框组合在一起时,可以使用 Pandas 提供的一些内置函数,比如 concat()
、merge()
和 join()
等。
concat()
可以按行或按列将两个或多个数据框组合在一起。
import pandas as pd
# 创建两个数据框
df1 = pd.DataFrame({'A': [1, 2, 3], 'B': ['a', 'b', 'c']})
df2 = pd.DataFrame({'A': [4, 5, 6], 'B': ['d', 'e', 'f']})
# 按行组合两个数据框
df_concat = pd.concat([df1, df2], axis=0)
print(df_concat)
输出:
A B
0 1 a
1 2 b
2 3 c
0 4 d
1 5 e
2 6 f
import pandas as pd
# 创建两个数据框
df1 = pd.DataFrame({'A': [1, 2, 3], 'B': ['a', 'b', 'c']})
df2 = pd.DataFrame({'C': [4, 5, 6], 'D': ['d', 'e', 'f']})
# 按列组合两个数据框
df_concat = pd.concat([df1, df2], axis=1)
print(df_concat)
输出:
A B C D
0 1 a 4 d
1 2 b 5 e
2 3 c 6 f
merge()
主要用于按列合并两个数据框。
import pandas as pd
# 创建两个数据框
df1 = pd.DataFrame({'A': [1, 2, 3], 'B': ['a', 'b', 'c']})
df2 = pd.DataFrame({'A': [2, 3, 4], 'C': ['d', 'e', 'f']})
# 按 A 列合并两个数据框
df_merge = pd.merge(df1, df2, on='A')
print(df_merge)
输出:
A B C
0 2 b d
1 3 c e
join()
主要用于将两个数据框按照索引组合。
import pandas as pd
# 创建两个数据框
df1 = pd.DataFrame({'A': [1, 2, 3], 'B': ['a', 'b', 'c']}, index=['a', 'b', 'c'])
df2 = pd.DataFrame({'C': [4, 5, 6], 'D': ['d', 'e', 'f']}, index=['b', 'c', 'd'])
# 按索引组合两个数据框
df_join = df1.join(df2)
print(df_join)
输出:
A B C D
a 1 a NaN NaN
b 2 b 4.0 d
c 3 c 5.0 e