import pandas as pd
import numpy as np
1:
left = pd.DataFrame({‘key’:[‘k0’,‘k1’,‘k2’,‘k3’],
‘A’:[‘a0’,‘a1’,‘a2’,‘a3’],
‘B’:[‘b0’,‘b1’,‘b2’,‘b3’]})
right = pd.DataFrame({‘key’:[‘k0’,‘k1’,‘k2’,‘k3’],
‘C’:[‘c0’,‘c1’,‘c2’,‘c3’],
‘D’:[‘d0’,‘d1’,‘d2’,‘d3’]})
key A B
0 k0 a0 b0
1 k1 a1 b1
2 k2 a2 b2
3 k3 a3 b3
key C D
0 k0 c0 d0
1 k1 c1 d1
2 k2 c2 d2
3 k3 c3 d3
res = pd.merge(left,right,on=‘key’) #以key为中心,进行合并
key A B C D
0 k0 a0 b0 c0 d0
1 k1 a1 b1 c1 d1
2 k2 a2 b2 c2 d2
3 k3 a3 b3 c3 d3
2:#indicator显示如何合并
df1 = pd.DataFrame({‘col1’:[0,1],‘col_left’:[‘a’,‘b’]})
df2 = pd.DataFrame({‘col1’:[1,2,2],‘col_right’:[2,2,2]})
col1 col_left
0 0 a
1 1 b
col1 col_right
0 1 2
1 2 2
2 2 2
res = pd.merge(df1,df2,on=‘col1’,how=‘outer’,indicator=True)
col1 col_left col_right _merge
0 0 a NaN left_only
1 1 b 2.0 both
2 2 NaN 2.0 right_only
3 2 NaN 2.0 right_only
3;#suffixes:将同一变量显示到不同属性中去
boys = pd.DataFrame({‘name’:[‘峰哥’,‘小哥’,‘小黑’],‘age’:[21,13,22]})
girls = pd.DataFrame({‘name’:[‘小妹’,‘丽丽’,‘涵涵’],‘age’:[12,31,22]})
res = pd.merge(boys,girls,on=‘name’,suffixes=[’_boys’,’_girls’],how=‘outer’)
name age_boys age_girls
0 峰哥 21.0 NaN
1 小哥 13.0 NaN
2 小黑 22.0 NaN
3 小妹 NaN 12.0
4 丽丽 NaN 31.0
5 涵涵 NaN 22.0
4;
import pandas as pd
import numpy as np
import matplotlib.pyplot as plt
data = pd.Series(np.random.randn(1000),index=np.arange(1000))
data = data.cumsum()
data = pd.DataFrame(np.random.randn(1000,4),
index=np.arange(1000),
columns=list(‘ABCD’))
data = data.cumsum()
data.plot()
plt.show()