前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >数据清洗 Chapter04 | 数据整合

数据清洗 Chapter04 | 数据整合

作者头像
不温卜火
发布2020-10-28 16:01:29
4870
发布2020-10-28 16:01:29
举报
文章被收录于专栏:不温卜火

这篇文章讲述的是数据整合。希望这篇数据清洗的文章对您有所帮助!如果您有想学习的知识或建议,可以给作者留言~

一、数据库风格的DataFrame合并

使用Pandas库中的merge()函数合并数据集

  • 1、建立两个数据集df1和df2
代码语言:javascript
复制
import pandas as pd

df1 = pd.DataFrame({'lkey':['b','b','a','c'],'data1':range(4)})
df2 = pd.DataFrame({'rkey':['a','b','b','d'],'data2':range(4)})
1
1
  • 2、merge()函数只把重合的部分保存下来

merge()从左到右进行合并,用left_on和right_on指定

代码语言:javascript
复制
pd.merge(df1,df2,left_on='lkey',right_on='rkey')
2
2
  • 3、把未重合的部分也保存下来

设置how参数outer,可添加两个数据集中left_on与right_on未重合部分

代码语言:javascript
复制
pd.merge(df1,df2,left_on='lkey',right_on='rkey',how='outer')
3
3

二、索引上的合并

根据索引合并数据集

  • 1、建立两个数据集left1和right1
代码语言:javascript
复制
import pandas as pd
left1 = pd.DataFrame({'key':['a','b','a','a','b','c'],'value':range(6)})
right1 = pd.DataFrame({'group_val':[3.5,7]},index=['a','b'])
4
4
  • 2、设置right_index和left_index为True

根据left1数据集的key列和right1数据集的索引进行合并

代码语言:javascript
复制
pd.merge(left1,right1,left_on='key',right_index=True,how='outer')
5
5

三、轴向连接

1

concat()函数对Series或DataFrame进行轴向连接

  • 1、创建两个序列s1和s2
代码语言:javascript
复制
s1 = pd.Series([0,1],index=['a','b'])
s2 = pd.Series([3,4],index=['c','d'])

使用concat()函数对两个序列进行行连接

  • 2、行连接
代码语言:javascript
复制
  pd.concat([s1,s2])
6
6
  • 3、列连接
代码语言:javascript
复制
pd.concat([s1,s2],axis = 1) 
7
7
  • 4、设置参数join为inner,可得到基于索引的内连接结果
代码语言:javascript
复制
s3 = pd.concat([s1*5,s2])
pd.concat([s1,s3],axis=1,join='inner')
8
8

2

对DataFrame进行轴向连接

  • 1、创建两个DataFrame
代码语言:javascript
复制
df1 = pd.DataFrame(np.arange(4).reshape((2,2)),columns=['a','b'])
df2 = pd.DataFrame(np.arange(4).reshape((2,2)),columns=['a','c'])
9
9
  • 2、使用concat()函数对两个数据集进行轴向连接
代码语言:javascript
复制
pd.concat([df1,df2])
10
10

合并数据集的索引为0,1,0,1

  • 3、忽略行索引,对数据集进行连接

设置ignore_index = True

代码语言:javascript
复制
pd.concat([df1,df2],ignore_index=True)
11
11

各位路过的朋友,如果觉得可以学到些什么的话,点个赞再走吧,欢迎各位路过的大佬评论,指正错误,也欢迎有问题的小伙伴评论留言,私信。

本文参与 腾讯云自媒体同步曝光计划,分享自作者个人站点/博客。
原始发表:2020/04/22 ,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 作者个人站点/博客 前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  • 一、数据库风格的DataFrame合并
  • 二、索引上的合并
  • 三、轴向连接
    • 1
      • 2
      领券
      问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档