【发布时间】:2020-05-20 02:00:58
【问题描述】:
嗨,我的数据框看起来像附加的图像。 Nbr_Cells 列是一个对象列表。我正在尝试在数据框中添加另一列,该列是 Nbr_Cells 列的子列表,如果单个对象以列 cellid 的相同结尾结尾。
例如,
cellid = U21-A000CH-1A
Nbr_Cells =[U21-MCH001-1A,U21-MCH001-2A,U21-SG0024-1A,U21-MCH001-2B]然后子列表 = [U21-MCH001-1A,U21-SG0024-1A]
因为它以类似的“1A”结尾。 同样,这必须为每一行复制。
我用 for 循环编写了以下代码,它工作正常。但是执行起来需要很多时间。 需要帮助将其转换为 lambda 函数或任何类似的快速执行代码。
for j in range(0,len(Overall_list)):
print(j)
List = []
for i in Overall_list['Nbr_Cells'][j]:
if(i.split("-")[2] == Overall_list['cellid'][j].split("-")[2]):
List.append(i)
Overall_list['Sub_Nbr_List'][j] = List
【问题讨论】:
标签: python performance lambda nested-loops