本文主要是介绍「Python数据分析」Pandas进阶,利用concat()函数连接数据(二),希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!
我们接下来看利用concat()函数连接数据的第二部分内容,先来看怎么使用concat()函数把series和dataframe连接在一起。
将Series和DataFrame连接在一起
先生成需要连接的series和dataframe数据集
连接过程如下图所示
连接结果
这里需要注意,连接过程中,Series将转换为DataFrame,列名是Series的名称,Series的数据索引,与DataFrame的索引对应。
这里series的数据索引,和dataframe一致,相当于是把series作为dataframe的一列,加入到原始的dataframe数据集中,形成了一个新的结果数据集。
如果series没有命名的话,连接过程如下图所示。
实现代码
这里相当于把series的名称进行连续编码,把编码的数据,作为dataframe的列名称,然后顺序加入到dataframe的列中。
要点:为了避免混乱,建议还是把需要连接的series数据集,设置一个名称。
给连接的数据集设置结果关键字
我们在进行数据连接的时候,经常需要把原始数据集设置一个名称,这样方便在连接后的新数据集中,查找之前的各个原始数据集。
给原始数据集设置一个名称,也就是在连接完成后的结果数据集中,设置一个关键字,这是通过MultiIndex来实现的。
我们先来看连接过程图
实现代码如下图所示
这里我们使用了第一部分,生成好的frames数据集,它是由df1,df2,df3,三个数据集合并而成。通过keys参数,给这三个原始数据集,设置了一个MultiIndex的关键字,分别是x,y,z。
这样,我们就可以通过loc函数,查找出关键字对应的数据集。
如果连接的是series数据集,keys参数只是重新设置,通过series数据集连接完成后,新的dataframe数据集的列名。
没有设置keys参数
设置keys参数
也可以通过字典(dict)的形式进行连接,这种连接方式,默认使用字典的key来设置结果数据集的关键字。
连接效果,和设置keys参数一致。
在dataframe数据集中添加行
我们可以把series数据集,作为行,添加到dataframe数据集中。
操作过程如下图所示。
实现代码
这里需要注意,设置series的name参数,是以列的形式加入到dataframe数据集中。
设置series的index参数,则是把series,作为行的形式,加入到dataframe数据集中。还要注意的是,以行的形式加入的话,需要把series通过to_frame函数,转换成为dataframe格式。然后通过T属性,进行转置,也就是把转换好的dataframe格式的数据,行和列进行转换。
通过以上的知识点的学习和实践,大家基本上可以掌握,使用concat()函数对数据进行合并的操作。数据合并,是一个抽象的过程,需要多加练习,才能掌握这种抽象的过程。所以,请大家对照代码,对数据进行修改,尝试不同的连接过程,增加实践的经验。
这篇关于「Python数据分析」Pandas进阶,利用concat()函数连接数据(二)的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!