【问题标题】:Create a list of tuples out of a list in a Pandas dataframe从 Pandas 数据框中的列表中创建元组列表
【发布时间】:2020-04-13 03:24:59
【问题描述】:

我有一个这样的数据框:

Path                   |  Routes_tuples
_______________________________________

[OAK, PHX, FLL, PBG]   | 0
[OAK, SEA, FLL, PBG]   | 0
[OAK, LAS, FLL, PBG]   | 0
[OAK, DFW, FLL, PBG]   | 0
.............          | ...............

我想要这样的东西:

Path                   |  Routes_tuples
_______________________________________

[OAK, PHX, FLL, PBG]   | [(OAK, PHX), (PHX, FLL),(FLL, PBG)]
[OAK, SEA, FLL, PBG]   | [(OAK, SEA), (SEA, FLL),(FLL, PBG)]
[OAK, LAS, FLL, PBG]   | [(OAK, LAS), (LAS, FLL),(FLL, PBG)]
[OAK, DFW, FLL, PBG]   | [(OAK, DFW), (DFW, FLL),(FLL, PBG)]
.............          | ...............

如何用 Python 做到这一点?

【问题讨论】:

    标签: python pandas list tuples


    【解决方案1】:

    要获得你想要的,你只需要移动你的列表并逐步配对。

    import pandas as pd
    series = pd.Series([['OAK', 'PHX', 'FLL', 'PBG'], ['OAK', 'SEA', 'FLL', 'PBG']])
    couples = lambda ls: [(x,y) for x,y in zip(ls[:-1], ls[1:])]
    series.apply(couples)
    

    输出:

    0    [(OAK, PHX), (PHX, FLL), (FLL, PBG)]
    1    [(OAK, SEA), (SEA, FLL), (FLL, PBG)]
    

    所以在您的情况下,您可能只能这样做df['Path'].apply(couples)

    【讨论】:

      猜你喜欢
      • 2021-04-28
      • 1970-01-01
      • 2022-07-15
      • 1970-01-01
      • 2017-04-30
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多