You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Pandas DataFrame列表列元素插入与路线legs拆分实现

实现步骤

首先准备原始数据:

import pandas as pd

df = pd.DataFrame({
    "booking": ['A', 'B', 'C'],
    "route": [['1','2','3'],['5','4','1'],['3','6','8']]
})

步骤1:在每个route列表头部插入'0'

直接用apply对每个列表进行拼接操作:

# 复制原DataFrame避免修改原数据
df1 = df.copy()
# 在每个route列表开头添加'0'
df1['route'] = df1['route'].apply(lambda lst: ['0'] + lst)

执行后df1的route列就变成了[['0','1','2','3'],['0','5','4','1'],['0','3','6','8']]

步骤2:将route转换为legs(相邻节点拼接)

同样用apply,结合列表推导式处理每个列表,把相邻元素用>连接:

# 生成legs列
df1['legs'] = df1['route'].apply(
    lambda lst: [f"{a}>{b}" for a, b in zip(lst[:-1], lst[1:])]
)
# 若不需要保留原route列,可执行删除
df1 = df1.drop('route', axis=1)

最终df1的结果为:

booking                  legs
0       A  [0>1, 1>2, 2>3]
1       B  [0>5, 5>4, 4>1]
2       C  [0>3, 3>6, 6>8]

内容的提问来源于stack exchange,提问作者bluekit46

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.07.21 09:13:14