前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >pandas(三)

pandas(三)

作者头像
py3study
发布2020-01-16 11:23:52
5210
发布2020-01-16 11:23:52
举报
文章被收录于专栏:python3python3

合并数据集:

  创建一个能创建dataframe的函数

  def make_data(cols,ind):

    data={c:[strc(c)+str(i) for i in ind] 

      for c in cols}

    return pd.DataFrame(data,ind)

   make_data('ABC',range(3))

一维数组

ser1 = pd.Series(['a','b','c'],index=[1,2,3])

ser2 = pd.Series(['d','e','f'],index=[4,5,6])

pd.concat([ser1,ser2])  

二维数组

df1 = make_data('ab',[1,2])

df2 = make_data('ab',[3,4])

pd.concat([df1,df2])  默认逐行合并axis=0(上下合并)

pandas 在合并索引时会保留索引,即使是重复的

触发索引重复异常:

veriy_integrity参数可以触发索引重复异常

try:

  pd.concat([x,y],verify_integrity=True)

except  ValueError as e:

  print('v')

忽略索引重复异常:

ignore_index可以实现忽略原先索引重新创建一个整数索引

当列名有相同也有不相同时

join,join_axes

join默认参数是outer 取两个数组的并集

inner指取两个数组的交集

append效果和concat相同

df1.append(df2)

重复列名 suffixes

df8 = pd.DataFrame({'name':['a','b','c'],'rank':[1,2,3]})

df9 = pd.DataFrame({'name':['a','b','c'],'rank':[4,5,6]})

pd.merge(df8,df9,on='name',suffixes=['_L','_R'])

merge效果和concat相同,on表示以name这一列为基础合并,suffixes表示将相同的两列区分

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

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

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

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

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档