Pandas中merge和join的区别
2024-08-31 20:36:46
可以说merge包含了join操作,支持两个df间行方向或列方向的拼接操作,默认列拼接,取交集,而join只是简化了merge的行拼接的操作
示例
定义一个left的DataFrame
left=pd.DataFrame([
[1,2],[3,4],[5,6]
],
index=['a','c','e'],
columns=['chenqionghe','muscle']
)
定义一个right的DataFrame
right=pd.DataFrame([
[7,8],[9,10],[11,12],[13,14],
],
index=['b','c','d','e'],
columns=['light','weight']
)
然后,我们使用merge通过索引合并这两个Dataframe,如下
left.merge(right,left_index=True,right_index=True,how='outer')
然后,通过join方法实现相同的操作
left.join(right,how='outer')
可以看出join其实是省略了参数的merge,并且没有基于列的连表功能
merge的参数
- left:参与合并的左侧DataFrame
- right:参与合并的右侧DataFrame
- how:inner、outer、left、right其中之一
- left_index:将左侧的行索引用作其连接键的列
- right_index:类似于left_index
- sort:根据连接键对合并后的数据进行排序,默认为True。有时在处理大数据集时,禁用该选项可获得更好的性能
- suffixes:字符串值元组,用于追加到重叠列名,默认为('_x','_y')
- copy:设置为False,可以在某些我死情况下避免将数据复制到结果数据结构中,默认总是复制
最新文章
- 自适应css 框架 PURE
- jQuery+AJAX实现网页无刷新上传
- iOS开发——新特性OC篇&;IOS9 系统新特性
- 真机测试---iOS证书(.p12)和描述文件(.mobileprovision)
- Unity NGUI实现按钮点击播放Aniamtion
- 用caffe给图像的混乱程度打分
- uva11538
- 开发IOS应用真的一定要买苹果电脑设备吗?
- UIManager
- 灰熊:在这6个信息流和DSP平台投放后,我总结了这些血泪经验!
- java的instanceof关键字
- RSS阅读器“阅读原文”报错400
- 【转】安全加密(五):如何使用AES防止固件泄露
- 在Centos 6.5 X64下切割m3u8
- ubuntu16.04获取root权限并用root用户登录
- C# 常用控件属性及方法介绍
- Hihocoder1883 : 生成树问题(并查集+树剖+线段树)
- GitLab更新远程分支信息
- vue项目中使用mockjs模拟接口返回数据
- [原]C#设置文件夹用户权限