Python Pandas数据处理教程:合并与拼接

分类:知识百科 日期: 点击:0

Python Pandas是一个非常强大的数据分析库,其中有一个非常重要的功能就是合并和拼接。它可以帮助我们快速地将不同的数据集合并在一起,并且可以根据需要调整数据的结构。

Pandas提供了一系列的函数和方法来合并和拼接数据,其中最常用的有concat,merge,join,append等。

1. concat函数

concat函数可以用来拼接不同的DataFrame,Series或者Panel对象。它可以沿着不同的轴(axis)将对象拼接在一起,例如沿着行(axis=0)或者列(axis=1)。

import pandas as pd

df1 = pd.DataFrame({'A': ['A0', 'A1', 'A2', 'A3'],
                    'B': ['B0', 'B1', 'B2', 'B3'],
                    'C': ['C0', 'C1', 'C2', 'C3'],
                    'D': ['D0', 'D1', 'D2', 'D3']},
                    index=[0, 1, 2, 3])

df2 = pd.DataFrame({'A': ['A4', 'A5', 'A6', 'A7'],
                    'B': ['B4', 'B5', 'B6', 'B7'],
                    'C': ['C4', 'C5', 'C6', 'C7'],
                    'D': ['D4', 'D5', 'D6', 'D7']},
                    index=[4, 5, 6, 7])

df3 = pd.DataFrame({'A': ['A8', 'A9', 'A10', 'A11'],
                    'B': ['B8', 'B9', 'B10', 'B11'],
                    'C': ['C8', 'C9', 'C10', 'C11'],
                    'D': ['D8', 'D9', 'D10', 'D11']},
                    index=[8, 9, 10, 11])

# 沿着行拼接
result = pd.concat([df1, df2, df3], axis=0)

# 沿着列拼接
result = pd.concat([df1, df2, df3], axis=1)

2. merge函数

merge函数可以用来将两个DataFrame对象中的数据进行合并。它可以根据指定的字段来合并,也可以根据两个DataFrame的索引来合并。

df1 = pd.DataFrame({'A': ['A0', 'A1', 'A2', 'A3'],
                    'B': ['B0', 'B1', 'B2', 'B3'],
                    'key': ['K0', 'K1', 'K2', 'K3']})

df2 = pd.DataFrame({'C': ['C0', 'C1', 'C2', 'C3'],
                    'D': ['D0', 'D1', 'D2', 'D3'],
                    'key': ['K0', 'K1', 'K2', 'K3']})

# 根据key字段进行合并
result = pd.merge(df1, df2, on='key')

# 根据索引进行合并
result = pd.merge(df1, df2, left_index=True, right_index=True)

3. join函数

join函数可以用来将两个DataFrame对象中的数据进行合并,它类似于merge函数,但是它只能按照索引进行合并,而不能按照指定字段进行合并。

df1 = pd.DataFrame({'A': ['A0', 'A1', 'A2', 'A3'],
                    'B': ['B0', 'B1', 'B2', 'B3']},
                    index=['K0', 'K1', 'K2', 'K3'])

df2 = pd.DataFrame({'C': ['C0', 'C1', 'C2', 'C3'],
                    'D': ['D0', 'D1', 'D2', 'D3']},
                    index=['K0', 'K1', 'K2', 'K3'])

# 根据索引进行合并
result = df1.join(df2)

4. append函数

append函数可以用来将一个DataFrame对象的行拼接到另一个DataFrame对象的后面,它只能拼接DataFrame对象,不能拼接Series或者Panel对象。

df1 = pd.DataFrame({'A': ['A0', 'A1', 'A2', 'A3'],
                    'B': ['B0', 'B1', 'B2', 'B3'],
                    'C': ['C0', 'C1', 'C2', 'C3'],
                    'D': ['D0', 'D1', 'D2', 'D3']},
                    index=[0, 1, 2, 3])

df2 = pd.DataFrame({'A': ['A4', 'A5', 'A6', 'A7'],
                    'B': ['B4', 'B5', 'B6', 'B7'],
                    'C': ['C4', 'C5', 'C6', 'C7'],
                    'D': ['D4', 'D5', 'D6', 'D7']},
                    index=[4, 5, 6, 7])

# 将df2的行拼接到df1的后面
result = df1.append(df2)

以上就是Python Pandas中合并与拼接的基本用法,可以帮助我们快速地处理大量的数据。

标签:

版权声明

1. 本站所有素材,仅限学习交流,仅展示部分内容,如需查看完整内容,请下载原文件。
2. 会员在本站下载的所有素材,只拥有使用权,著作权归原作者所有。
3. 所有素材,未经合法授权,请勿用于商业用途,会员不得以任何形式发布、传播、复制、转售该素材,否则一律封号处理。
4. 如果素材损害你的权益请联系客服QQ:77594475 处理。