根据条件组合列表中的列表

问题描述 投票:0回答:1

我正在尝试创建一个for循环,以根据条件在列表中合并列表。

我的数据集中有300条宠物记录。有3种动物(例如狗,猫,鸟),每只动物出生的时间间隔(例如(1990,2000],(2000,2004]等)和友好的仪表间隔每只动物的等级(例如(0,2],(2、4],(4、6]等)

数据集的图像可以在这里找到:https://i.stack.imgur.com/YwbGN.png

我正在使用的用于组合仪表友好等级的当前代码如下:

friendly_meter_combos = []
combo = []

for val in df['friendly_meter'].unique():
    if len(combo) < 2:
        combo.append(val)
    else:
        friendly_meter_combos.append(combo)
        combo = []
        combo.append(val)

这为我提供了一个示例结果

friendly_meter_combos = 
[[(0, 2], (2, 4]],
 [(4, 6], (6, 8]],
 [(8, 10], (2, 4]], 
 [(4, 6], (6, 8]],
 ...]. 

正如您在我打印的倒数第二行中看到的那样,数字从头开始[[(8,10],(2,4]])。这是因为我现在出生的年份间隔不同对于数据集中相同动物的类型,我想弄清楚如何重新启动代码以获取下面的输出]]

friendly_meter_combos = 
[[(0, 2], (2, 4]],
 [(4, 6], (6, 8]],
 [(8, 10]], 
 [(2, 4], (4, 6]],
 ...]. 

任何帮助将不胜感激!谢谢!

我正在尝试创建一个for循环,以根据条件在列表中合并列表。我的数据集有300条宠物记录。有3种动物(例如狗,猫,鸟),每隔一年的间隔时间...

python pandas list loops conditional-statements
1个回答
0
投票

谢谢您与阿比德(Abid)联系!看起来像这样(由于我是Stack Overflow的新手,它不会让我上传照片)

© www.soinside.com 2019 - 2024. All rights reserved.