python pandas中对Series数据进行轴向连接的实例

时间:2021-05-22

有时候我们想要的数据合并结果是数据的轴向连接,在pandas中这可以通过concat来实现。操作的对象通常是Series。

Ipython中的交互代码如下:

In [17]: from pandas import Series,DataFrameIn [18]: series1 = Series(range(2),index = ['a','b'])In [19]: series2 = Series(range(3),index = ['c','d','e'])In [20]: series3 = Series(range(2),index = ['f','g'])In [21]: import pandas as pd

进行三个Series的连接:

In [22]: pd.concat([series1,series2,series3])Out[22]: a 0b 1c 0d 1e 2f 0g 1dtype: int64

默认情况下,pandas执行的是按照axis=0进行连接。如果进行axis=1的连接,结果如下:

In [24]: S1=pd.concat([series1,series2,series3],axis=1)In [25]: S1Out[25]: 0 1 2a 0.0 NaN NaNb 1.0 NaN NaNc NaN 0.0 NaNd NaN 1.0 NaNe NaN 2.0 NaNf NaN NaN 0.0g NaN NaN 1.0In [26]: type(S1)Out[26]: pandas.core.frame.DataFrame

结果是一个DataFrame,回头再看一下前面的Series的连接后的最终类型:

In [27]: type(pd.concat([series1,series2,series3]))Out[27]: pandas.core.series.Series

两种方式的结果并不相同,一个结果是Series,另一个则是DataFrame。

In [29]: series3 = Series(range(2),index = ['f','e'])In [30]: pd.concat([series1,series2,series3])Out[30]: a 0b 1c 0d 1e 2f 0e 1dtype: int64

从上面的一点测试中可以看出,concat的操作仅仅是单纯的连接,并没有涉及到数据的整合。如果想要进行整合,还是使用merge的方法。

以上这篇python pandas中对Series数据进行轴向连接的实例就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持。

声明:本页内容来源网络,仅供用户参考;我单位不保证亦不表示资料全面及准确无误,也不保证亦不表示这些资料为最新信息,如因任何原因,本网内容或者用户因倚赖本网内容造成任何损失或损害,我单位将不会负任何法律责任。如涉及版权问题,请提交至online#300.cn邮箱联系删除。

相关文章