- 合并两个Dataframe
- 合并多个Dataframe
合并两个Dataframe用pd.merge
import pandas as pd
import numpy as np
df1 = pd.Dataframe(np.array([
['a', 1, 2],
['b', 3, 4],
['c', 5, 6]]),
columns=['name', 'num11', 'num12'])
df2 = pd.Dataframe(np.array([
['a', 7, 8],
['b', 9, 10],
['c', 11, 12]]),
columns=['name', 'num21', 'num22'])
df_result = pd.merge(df1, df2, on='name')
print(df_result)
合并多个Dataframe
import pandas as pd
import numpy as np
from functools import reduce
df1 = pd.Dataframe(np.array([
['a', 1, 2],
['b', 3, 4],
['c', 5, 6]]),
columns=['name', 'num11', 'num12'])
df2 = pd.Dataframe(np.array([
['a', 7, 8],
['b', 9, 10],
['c', 11, 12]]),
columns=['name', 'num21', 'num22'])
df3 = pd.Dataframe(np.array([
['a', 13, 14],
['b', 15, 16],
['c', 17, 18]]),
columns=['name', 'num31', 'num32'])
dfs = [df1, df2, df3]
df_result = reduce(lambda left, right: pd.merge(left, right, on='name'), dfs)
print(df_result)
PS:
- 合并时,pd.merge函数里的参数how、on必须是一致的



