Python数据分析:pandas数据合并

Python数据分析:pandas数据合并

pd.concat
  • 沿指定轴方向将多个对象合并到一起

  • 注意指定轴的方向,默认axis=0

    # index 没有重复的情况
    ser_obj1 = pd.Series(np.random.randint(0, 10, 5), index=range(0,5))
    ser_obj2 = pd.Series(np.random.randint(0, 10, 4), index=range(5,9))
    ser_obj3 = pd.Series(np.random.randint(0, 10, 3), index=range(9,12))
    
    print(ser_obj1)
    print('-----------')
    print(ser_obj2)
    print('-----------')
    print(ser_obj3)
    

    运行结果:
    在这里插入图片描述

pd.concat([ser_obj1, ser_obj2, ser_obj3])

运行结果:
在这里插入图片描述

# 指定axis=1
pd.concat([ser_obj1, ser_obj2, ser_obj3], axis=1)

运行结果:
在这里插入图片描述

# index 有重复的情况
ser_obj1 = pd.Series(np.random.randint(0, 10, 5), index=range(5))
ser_obj2 = pd.Series(np.random.randint(0, 10, 4), index=range(4))
ser_obj3 = pd.Series(np.random.randint(0, 10, 3), index=range(3))

print(ser_obj1)
print('-----------')
print(ser_obj2)
print('-----------')
print(ser_obj3)

运行结果:
在这里插入图片描述

pd.concat([ser_obj1, ser_obj2, ser_obj3])

运行结果:
在这里插入图片描述

  • jion可指定合并方式,默认为outer

    pd.concat([ser_obj1, ser_obj2, ser_obj3], axis=1, join='inner')
    

    运行结果:
    在这里插入图片描述

  • dataframe合并时同时查看行索引和列索引

    df_obj1 = pd.DataFrame(np.random.randint(0, 10, (3, 2)), index=['a', 'b', 'c'],
                           columns=['A', 'B'])
    df_obj2 = pd.DataFrame(np.random.randint(0, 10, (2, 2)), index=['a', 'b'],
                           columns=['C', 'D'])
    print(df_obj1)
    print('-----------')
    print(df_obj2)
    

    运行结果:
    在这里插入图片描述

    扫描二维码关注公众号,回复: 6096597 查看本文章
pd.concat([df_obj1, df_obj2])

运行结果:
在这里插入图片描述

pd.concat([df_obj1, df_obj2], axis=1)

运行结果:
在这里插入图片描述

猜你喜欢

转载自blog.csdn.net/weixin_41792682/article/details/89576526