欧美bbbwbbbw肥妇,免费乱码人妻系列日韩,一级黄片

Python Pandas list列表數(shù)據(jù)列拆分成多行的方法實現(xiàn)

 更新時間:2020年12月14日 08:28:20   作者:levi  
這篇文章主要介紹了Python Pandas list(列表)數(shù)據(jù)列拆分成多行的方法,文中通過示例代碼介紹的非常詳細,對大家的學習或者工作具有一定的參考學習價值,需要的朋友們下面隨著小編來一起學習學習吧

1、實現(xiàn)的效果

示例代碼:

df=pd.DataFrame({'A':[1,2],'B':[[1,2],[1,2]]})
df
Out[458]: 
  A    B
0 1 [1, 2]
1 2 [1, 2]

拆分成多行的效果:

   A  B
0  1  1
1  1  2
3  2  1
4  2  2

2、拆分成多行的方法

1)通過apply和pd.Series實現(xiàn)

容易理解,但在性能方面不推薦。

df.set_index('A').B.apply(pd.Series).stack().reset_index(level=0).rename(columns={0:'B'})
Out[463]: 
  A B
0 1 1
1 1 2
0 2 1
1 2 2

2)使用repeat和DataFrame構造函數(shù)

性能可以,但不太適合多列

df=pd.DataFrame({'A':df.A.repeat(df.B.str.len()),'B':np.concatenate(df.B.values)})
df
Out[465]: 
  A B
0 1 1
0 1 2
1 2 1
1 2 2

或者

s=pd.DataFrame({'B':np.concatenate(df.B.values)},index=df.index.repeat(df.B.str.len()))
s.join(df.drop('B',1),how='left')
Out[477]: 
  B A
0 1 1
0 2 1
1 1 2
1 2 2

3)創(chuàng)建新的列表

pd.DataFrame([[x] + [z] for x, y in df.values for z in y],columns=df.columns)
Out[488]: 
  A B
0 1 1
1 1 2
2 2 1
3 2 2

或者

#拆成多于兩列的情況
s=pd.DataFrame([[x] + [z] for x, y in zip(df.index,df.B) for z in y])
s.merge(df,left_on=0,right_index=True)
Out[491]: 
  0 1 A    B
0 0 1 1 [1, 2]
1 0 2 1 [1, 2]
2 1 1 2 [1, 2]
3 1 2 2 [1, 2]

4)使用reindex和loc實現(xiàn)

df.reindex(df.index.repeat(df.B.str.len())).assign(B=np.concatenate(df.B.values))
Out[554]: 
  A B
0 1 1
0 1 2
1 2 1
1 2 2
#df.loc[df.index.repeat(df.B.str.len())].assign(B=np.concatenate(df.B.values)

5)使用numpy高性能實現(xiàn)

newvalues=np.dstack((np.repeat(df.A.values,list(map(len,df.B.values))),np.concatenate(df.B.values)))
pd.DataFrame(data=newvalues[0],columns=df.columns)
  A B
0 1 1
1 1 2
2 2 1
3 2 2

到此這篇關于Python Pandas list列表數(shù)據(jù)列拆分成多行的方法實現(xiàn)的文章就介紹到這了,更多相關Pandas list列拆分成多行內容請搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關文章希望大家以后多多支持腳本之家!

相關文章

  • Python如何在ubuntu中更改Python和pip指向

    Python如何在ubuntu中更改Python和pip指向

    這篇文章主要介紹了Python如何在ubuntu中更改Python和pip指向問題,具有很好的參考價值,希望對大家有所幫助,如有錯誤或未考慮完全的地方,望不吝賜教
    2024-08-08
  • Python中figure與axies繪圖有哪些不同

    Python中figure與axies繪圖有哪些不同

    這篇文章主要介紹了Python中figure與axies繪圖有哪些不同,文中通過示例代碼介紹的非常詳細,對大家的學習或者工作具有一定的參考學習價值,需要的朋友們下面隨著小編來一起學習吧
    2023-02-02
  • Python實現(xiàn)批量修改指定目錄下圖片的大小

    Python實現(xiàn)批量修改指定目錄下圖片的大小

    批量修改指定目錄下圖片大小通常是在需要對大量圖片進行統(tǒng)一處理的情況下使用的,本文主要為大家詳細介紹了如何利用Python實現(xiàn)批量修改圖片大小,需要的可以參考下
    2023-10-10
  • 詳解Python中內置的NotImplemented類型的用法

    詳解Python中內置的NotImplemented類型的用法

    這篇文章主要介紹了詳解Python中內置的NotImplemented類型的用法,包括對相關的__eq__()和__ne__()兩個方法使用的講解,需要的朋友可以參考下
    2015-03-03
  • pycharm配置pyqt5-tools開發(fā)環(huán)境的方法步驟

    pycharm配置pyqt5-tools開發(fā)環(huán)境的方法步驟

    這篇文章主要介紹了pycharm配置pyqt5-tools開發(fā)環(huán)境的方法步驟,小編覺得挺不錯的,現(xiàn)在分享給大家,也給大家做個參考。一起跟隨小編過來看看吧
    2019-02-02
  • Python如何繪制日歷圖和熱力圖

    Python如何繪制日歷圖和熱力圖

    這篇文章主要介紹了Python如何繪制日歷圖和熱力圖,幫助大家更好的理解和學習Python,感興趣的朋友可以了解下
    2020-08-08
  • python編程使用PyQt創(chuàng)建UE藍圖

    python編程使用PyQt創(chuàng)建UE藍圖

    這篇文章主要為大家介紹了python編程中如何使用PyQt創(chuàng)建UE藍圖的示例詳解,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進步
    2021-10-10
  • Python一行代碼可直接使用最全盤點

    Python一行代碼可直接使用最全盤點

    本文盤點一些Python中常用的一行(不限于一行)代碼,可直接用在日常編碼實踐中,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進步,早日升職加薪
    2022-05-05
  • python實現(xiàn)的發(fā)郵件功能示例

    python實現(xiàn)的發(fā)郵件功能示例

    這篇文章主要介紹了python實現(xiàn)的發(fā)郵件功能,結合實例形式分析了Python使用網易郵箱發(fā)送郵件的相關操作技巧,需要的朋友可以參考下
    2019-09-09
  • Python HTML解析模塊HTMLParser用法分析【爬蟲工具】

    Python HTML解析模塊HTMLParser用法分析【爬蟲工具】

    這篇文章主要介紹了Python HTML解析模塊HTMLParser用法,結合實例形式分析了HTMLParser模塊功能、常用函數(shù)及作為爬蟲工具相關使用技巧,需要的朋友可以參考下
    2019-04-04

最新評論