1、merge()函数
——根据一个或多个列将不同数据表中的行连接起来
代码练习:
import pandas as pd#引入pandas库
df1=pd.DataFrame({'公司':['万科','阿里','百度'],'分数':[90,50,85]})
df2=pd.DataFrame({'公司':['万科','阿里','京东'],'股价':[20,180,30]})
#merge()函数:根据一个或多个列将不同数据表中的行连接起来
df3=pd.merge(df1,df2,on='公司')#merge根据相同的列名对数据表进行合并,默认选取两个表共有的内容;on参数可以指定按照该列进行合并,默认两表交集
df4=pd.merge(df1,df2,on='公司',how='outer')#how参数outer可取并集
df5=pd.merge(df1,df2,how='left')#保留df1全部内容,并入df2内容
df6=pd.merge(df1,df2,left_index=True,right_index=True)#根据行索引进行合并
print(df3)
print(df4)
print(df5)
print(df6)
运行结果:
2、concat()函数
代码练习:
import pandas as pd#引入pandas库
df1=pd.DataFrame({'公司':['万科','阿里','百度'],'分数':[90,50,85]})
df2=pd.DataFrame({'公司':['万科','阿里','京东'],'股价':[20,180,30]})
#CONCAT()函数:全连接方式,直接合并
df7=pd.concat([df1,df2],sort=False)#axis默认为0
df8=pd.concat([df1,df2],ignore_index=True,sort=False)#忽略原有索引,生成新的数字序列当索引
df9=pd.concat([df1,df2],axis=1)#两个表,横向拼接
print(df7)
print(df8)
print(df9)
运行结果:
3、append()函数:concat()函数的简化版
import pandas as pd#引入pandas库
#append()函数
df10=df1.append(df2,sort=False)#纵向拼接表格
print(df10)
df10=df1.append({'公司':'腾讯','分数':'90'},ignore_index=True,sort=False)#新增元素
print(df10)
运行结果: