【Python数据科学手册】Pandas——七、合并数据集:Concat和Append操作

七、合并数据集:Concat和Append操作

写一个构造Dataframe的函数
在这里插入图片描述

1.知识回顾: NumPy数组的合并

np.concatenate 函数,axis 参数可以设置合并的座标轴方向
在这里插入图片描述

2.通过pd.concat实现简易合并

Pandas 有一个 pd.concat() 函数与 np.concatenate 语法类似,但是配置参数更多,功能也更强大
pd.concat(objs, axis=0, join='outer', join_axes=None, ignore_index=False, keys=None, levels=None, names=None, verify_integrity=False, sort=None, copy=True)
简单地合并一维的 Series 或 DataFrame 对象
在这里插入图片描述
合并高维数据,相同列方向才能垂直合并,相同行索引才能水平合并
在这里插入图片描述
否则横纵交叉
在这里插入图片描述

1)索引重复

pd.concat 在合并时会保留索引,即使索引是重复的
在这里插入图片描述
虽然 DataFrame 允许这么做,但如果结果并不是我们想要的,可以通过以下方法解决:

  • 捕捉索引重复的错误 :设置 verify_integrity 参数
    verify_integrity=False是默认的,将它改成True后,索引出现重复就会报错
    在这里插入图片描述
  • 忽略索引,重新设置:设置 ignore_index 参数
    在这里插入图片描述
  • 增加多级索引:keys 参数
    在这里插入图片描述

2)类似join合并

当存在要合并的Dataframe存在重合的列,可以设置join参数取并集或交集
在这里插入图片描述
同样适用于行
在这里插入图片描述
join_axes 参数直接指定保留的行名或列名
在这里插入图片描述

3)append()方法

df1.append(df2),效果与pd.concat([df1, df2]) 一样
在这里插入图片描述
Pandas 的 append() 不直接更新原有对象的值
在这里插入图片描述

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章