服务器之家

服务器之家 > 正文

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

时间:2021-03-02 00:35     来源/作者:grey_csdn

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

Ipython中的交互代码如下:

?
1
2
3
4
5
In [17]: from pandas import Series,DataFrame
In [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的连接:

?
1
2
3
4
5
6
7
8
9
10
In [22]: pd.concat([series1,series2,series3])
Out[22]:
a 0
b 1
c 0
d 1
e 2
f 0
g 1
dtype: int64

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

?
1
2
3
4
5
6
7
8
9
10
11
12
13
In [24]: S1=pd.concat([series1,series2,series3],axis=1)
In [25]: S1
Out[25]:
 0 1 2
a 0.0 NaN NaN
b 1.0 NaN NaN
c NaN 0.0 NaN
d NaN 1.0 NaN
e NaN 2.0 NaN
f NaN NaN 0.0
g NaN NaN 1.0
In [26]: type(S1)
Out[26]: pandas.core.frame.DataFrame

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

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

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

?
1
2
3
4
5
6
7
8
9
10
11
In [29]: series3 = Series(range(2),index = ['f','e'])
In [30]: pd.concat([series1,series2,series3])
Out[30]:
a 0
b 1
c 0
d 1
e 2
f 0
e 1
dtype: int64

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

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

原文链接:https://blog.csdn.net/grey_csdn/article/details/70224122

标签:

相关文章

热门资讯

2020微信伤感网名听哭了 让对方看到心疼的伤感网名大全
2020微信伤感网名听哭了 让对方看到心疼的伤感网名大全 2019-12-26
yue是什么意思 网络流行语yue了是什么梗
yue是什么意思 网络流行语yue了是什么梗 2020-10-11
Intellij idea2020永久破解,亲测可用!!!
Intellij idea2020永久破解,亲测可用!!! 2020-07-29
背刺什么意思 网络词语背刺是什么梗
背刺什么意思 网络词语背刺是什么梗 2020-05-22
苹果12mini价格表官网报价 iPhone12mini全版本价格汇总
苹果12mini价格表官网报价 iPhone12mini全版本价格汇总 2020-11-13
返回顶部