pandas中数据合并的常用方法
Pandas是一种常用的数据分析库,它提供了许多方便的方法来处理数据,其中数据合并也是其中一个非常常用的方法。在Pandas中,有多种方法可以实现数据合并,以下是常用方法的简单介绍。 一、concat函数
concat函数可以将两个或多个DataFrame对象合并到一起,并按照指定的轴方向进行合并。其中轴的方向默认为0,即按行合并,我们可以通过设置axis参数为1来按列进行合并。 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']}) frames = [df1, df2, df3] result = pd.concat(frames)
将三个数据框合并在一起,并按照index值从0开始排序。 输出结果: A B C D 0 A0 B0 C0 D0 1 A1 B1 C1 D1 2 A2 B2 C2 D2 3 A3 B3 C3 D3 0 A4 B4 C4 D4 1 A5 B5 C5 D5
2 A6 B6 C6 D6 3 A7 B7 C7 D7 0 A8 B8 C8 D8 1 A9 B9 C9 D9 2 A10 B10 C10 D10 3 A11 B11 C11 D11
我们可以使用ignore_index参数,来忽略原来的index值,将合并后的index值从0开始计算。
将df2按列合并到df1后面。 二、merge函数
merge函数可以将两个不同DataFrame的数据按照某个共同的列连接起来,这种方法类似于SQL中的join操作。与concat函数不同的是,merge函数更适用于多对多和一对多的情况,因为它使用指定列的值来确定连接方式,而不是依赖于位置。 1.内连接(inner join)
将left和right两个数据框按照‘key’列连接在一起。 key A B C D 0 K0 A0 B0 C0 D0 1 K1 A1 B1 C1 D1 2 K2 A2 B2 C2 D2 3 K3 A3 B3 C3 D3
result = pd.merge(left, right, on='key', how='left')
指定how参数为‘left’,表示以left为主表,以right为附加表进行左连接。 三、join方法
join方法与merge方法作用相同,同样可以实现两个不同DataFrame的数据按照某个共同的列进行连接。与merge方法不同的是,join方法默认以index作为连接键,而merge方法需要明确指定用哪个或哪些列作为连接键。另外,join方法只能实现左连接,而merge方法可以实现左连接、右连接、内连接、外连接。
四、append方法
append方法是将一个DataFrame对象追加到另外一个DataFrame对象,实现两个相同列的合并,类似于concat函数。但是,append方法只能进行按行合并,不能按列合并。 result = df1.append(df2) result = result.append(df3) 将df2和df3分别追加到df1的下面。
因篇幅问题不能全部显示,请点此查看更多更全内容
Copyright © 2019- sceh.cn 版权所有 湘ICP备2023017654号-4
违法及侵权请联系:TEL:199 1889 7713 E-MAIL:2724546146@qq.com
本站由北京市万商天勤律师事务所王兴未律师提供法律服务