DataFrame数据框合并(concat()和merge()函数)

1.concat()函数

import pandas as pd
import numpy as np
'''
数据框合并 concat()函数
使用方式:concat([df1,df2,df3……]),注意括号内的先后顺序对结果有影响。可以拼接多个数据框
'''
df1=pd.DataFrame(np.arange(12).reshape(3,4))
df2=2*df1

#竖向合并(行数增加)
new_df1=pd.concat([df1,df2])#注意pd.concat([df2,df1])结果与pd.concat([df1,df2])不一样。谁写在前面,合并后谁就在上面。

#横向合并(列数增加)
new_df2=pd.concat([df1,df2],axis=1)

DataFrame数据框合并(concat()和merge()函数)_第1张图片
DataFrame数据框合并(concat()和merge()函数)_第2张图片

2.merge()函数

import pandas as pd

'''
merge函数:拼接两个数据框!注意是两个。而concat可以拼接多个数据框
'''
df1=pd.read_csv(r"C:\data\merge函数\data1.csv",engine='python')
df2=pd.read_csv(r"C:\data\merge函数\data2.csv",engine='python')

DataFrame数据框合并(concat()和merge()函数)_第3张图片

#根据name将两个数据框连接起来,删除各自数据框独有的信息
df3=pd.merge(df1,df2,left_on='name',right_on='name')

DataFrame数据框合并(concat()和merge()函数)_第4张图片

#根据name将两个数据框连接起来,保留左边数据框的信息。删除右边数据框独有的信息
df4=pd.merge(df1,df2,left_on='name',right_on='name',how='left')

DataFrame数据框合并(concat()和merge()函数)_第5张图片

#根据name将两个数据框连接起来,保留右边数据框的信息。删除左边数据框独有的信息
df5=pd.merge(df1,df2,left_on='name',right_on='name',how='right')

DataFrame数据框合并(concat()和merge()函数)_第6张图片

#根据name将两个数据框连接起来,左右数据框信息均保留(即全部保留)
df6=pd.merge(df1,df2,left_on='name',right_on='name',how='outer')

DataFrame数据框合并(concat()和merge()函数)_第7张图片

你可能感兴趣的:(pandas,python)