您好,登錄后才能下訂單哦!
小編給大家分享一下python pandas中對Series數據進行軸向連接的方法,相信大部分人都還不怎么了解,因此分享這篇文章給大家參考一下,希望大家閱讀完這篇文章后大有收獲,下面讓我們一起去了解一下吧!
有時候我們想要的數據合并結果是數據的軸向連接,在pandas中這可以通過concat來實現。操作的對象通常是Series。
Ipython中的交互代碼如下:
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的連接:
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的連接,結果如下:
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的連接后的最終類型:
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 0 b 1 c 0 d 1 e 2 f 0 e 1 dtype: int64
從上面的一點測試中可以看出,concat的操作僅僅是單純的連接,并沒有涉及到數據的整合。如果想要進行整合,還是使用merge的方法。
以上是“python pandas中對Series數據進行軸向連接的方法”這篇文章的所有內容,感謝各位的閱讀!相信大家都有了一定的了解,希望分享的內容對大家有所幫助,如果還想學習更多知識,歡迎關注億速云行業資訊頻道!
免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。