有时候我们得到不同的数据块,然后需要把他们合并到一起,这个时候就需要合并。合并是对数据的一种操作。
接下来看看,数据合并
1 数据合并
import numpy as np
import pandas as pd
df1 = pd.DataFrame(np.arange(12).reshape(4,3),columns=['a','b','c'])
df2 = pd.DataFrame(np.arange(12,24).reshape(4,3),columns=['a','b','c'])
df3 = pd.DataFrame(np.arange(36,48).reshape(4,3),columns=['a','b','c'])
df4=pd.concat([df1,df2,df3],axis=0) # 纵向合并
df5 =pd.concat([df1,df2,df3],axis=0,ignore_index=True) # 忽略索引
df6 = pd.concat([df1,df2,df3],axis=1) # 横向
df7 = pd.concat([df1,df2],join='outer',ignore_index=True) # 合并两个表,缺少的部分填充nan
df8= pd.concat([df1,df2],join='inner',ignore_index=True)# 缺少的部分直接去掉
2 还可以用merge进行合并
import pandas as pd
import numpy as np
import matplotlib.pyplot as plt
left = pd.DataFrame({
'key':['K0','K1','k2','k3'],
'A':['a0','a1','a2','a3'],
'B':['b0','b1','b2','b3']
})
right = pd.DataFrame({
'key':['K0','K0','k2','k3'],
'C':['C0','C1','C2','C3'],
'D':['D0','D1','D2','D3']
})
# how = ['left','right','inner','outer']
res = pd.merge(left,right,on=['key'],how='outer',indicator='indicator_column')