Pandas:连接数据集--concat

本文介绍如何使用Numpy进行数组的垂直和水平连接,并展示了Pandas库中concat函数的应用,包括Series对象的垂直与水平连接、层次索引的创建及DataFrame的连接。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

import numpy as np
import pandas as pd
from pandas import Series,DataFrame

一、Numpy数组的连接–concatenate

a = np.arange(6).reshape(2,3)
a
array([[0, 1, 2],
       [3, 4, 5]])

1.垂直连接

np.concatenate([a,a])
array([[0, 1, 2],
       [3, 4, 5],
       [0, 1, 2],
       [3, 4, 5]])

2.水平连接

np.concatenate([a,a],axis=1)
array([[0, 1, 2, 0, 1, 2],
       [3, 4, 5, 3, 4, 5]])

二、pandas.concat函数

s1 = Series([0,1],index = ['a','b'])
s2 = Series([2,3,4],index = ['c','d','e'])
s3 = Series([5,6],index = ['f','g'])

1.垂直连接

pd.concat([s1,s2,s3])
a    0
b    1
c    2
d    3
e    4
f    5
g    6
dtype: int64

2.水平连接

print(pd.concat([s1,s2,s3],axis=1))
     0    1    2
a  0.0  NaN  NaN
b  1.0  NaN  NaN
c  NaN  2.0  NaN
d  NaN  3.0  NaN
e  NaN  4.0  NaN
f  NaN  NaN  5.0
g  NaN  NaN  6.0

3.对连接的对象添加索引(实现层次索引)

print(pd.concat([s1,s2,s3],keys=['one','two','thress']))
one     a    0
        b    1
two     c    2
        d    3
        e    4
thress  f    5
        g    6
dtype: int64

4.水平连接时,为结果的DataFrame添加列索引

print(pd.concat([s1,s2,s3],axis=1,keys=['one','two','three']))
   one  two  three
a  0.0  NaN    NaN
b  1.0  NaN    NaN
c  NaN  2.0    NaN
d  NaN  3.0    NaN
e  NaN  4.0    NaN
f  NaN  NaN    5.0
g  NaN  NaN    6.0

5.对DataFrame同样适用

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

BQW_

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值