数据清洗 Chapter04 | 数据整合

举报
不温卜火 发表于 2020/12/02 23:04:57 2020/12/02
【摘要】 这篇文章讲述的是数据整合。希望这篇数据清洗的文章对您有所帮助!如果您有想学习的知识或建议,可以给作者留言~ Chapter04 | 数据整合 一、数据库风格的DataFrame合并二、索引上的合并三、轴向连接12 一、数据库风格的DataFrame合并 使用Pandas库中的merge()函数合并数据集 1、建立两个数据集df1和d...

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


一、数据库风格的DataFrame合并

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

  • 1、建立两个数据集df1和df2
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
  • 2
  • 3
  • 4

1

  • 2、merge()函数只把重合的部分保存下来

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

pd.merge(df1,df2,left_on='lkey',right_on='rkey')

  
 
  • 1

2

  • 3、把未重合的部分也保存下来

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

pd.merge(df1,df2,left_on='lkey',right_on='rkey',how='outer')

  
 
  • 1

3

二、索引上的合并

根据索引合并数据集

  • 1、建立两个数据集left1和right1
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'])

  
 
  • 1
  • 2
  • 3

4

  • 2、设置right_index和left_index为True

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

pd.merge(left1,right1,left_on='key',right_index=True,how='outer')

  
 
  • 1

5

三、轴向连接

1

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

  • 1、创建两个序列s1和s2
s1 = pd.Series([0,1],index=['a','b'])
s2 = pd.Series([3,4],index=['c','d'])

  
 
  • 1
  • 2

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

  • 2、行连接
  pd.concat([s1,s2])

  
 
  • 1

6

  • 3、列连接
pd.concat([s1,s2],axis = 1) 

  
 
  • 1

7

  • 4、设置参数join为inner,可得到基于索引的内连接结果
s3 = pd.concat([s1*5,s2])
pd.concat([s1,s3],axis=1,join='inner')

  
 
  • 1
  • 2

8

2

对DataFrame进行轴向连接

  • 1、创建两个DataFrame
df1 = pd.DataFrame(np.arange(4).reshape((2,2)),columns=['a','b'])
df2 = pd.DataFrame(np.arange(4).reshape((2,2)),columns=['a','c'])

  
 
  • 1
  • 2

9

  • 2、使用concat()函数对两个数据集进行轴向连接
pd.concat([df1,df2])

  
 
  • 1

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

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

设置ignore_index = True

pd.concat([df1,df2],ignore_index=True)

  
 
  • 1

11


各位路过的朋友,如果觉得可以学到些什么的话,点个赞再走吧,欢迎各位路过的大佬评论,指正错误,也欢迎有问题的小伙伴评论留言,私信。每个小伙伴的关注都是本人更新博客的动力!!!

文章来源: buwenbuhuo.blog.csdn.net,作者:不温卜火,版权归原作者所有,如需转载,请联系作者。

原文链接:buwenbuhuo.blog.csdn.net/article/details/105440664

【版权声明】本文为华为云社区用户转载文章,如果您发现本社区中有涉嫌抄袭的内容,欢迎发送邮件进行举报,并提供相关证据,一经查实,本社区将立刻删除涉嫌侵权内容,举报邮箱: cloudbbs@huaweicloud.com
  • 点赞
  • 收藏
  • 关注作者

评论(0

0/1000
抱歉,系统识别当前为高风险访问,暂不支持该操作

全部回复

上滑加载中

设置昵称

在此一键设置昵称,即可参与社区互动!

*长度不超过10个汉字或20个英文字符,设置后3个月内不可修改。

*长度不超过10个汉字或20个英文字符,设置后3个月内不可修改。