创建一个新列表并根据pandas系列的值填充它

时间:2018-05-22 15:30:20

标签: python list pandas series

我正在尝试创建一个for循环,它遍历一个pandas系列ageNew,根据pandas系列的内容填充一个列表label

这是我输出错误的代码:

在:

for i in ageNew.items():
    if ageNew[i] <= 100:
        val = 0
    else:
        val = 1
    label.append(val)

输出:

KeyError: (0, 218)

3 个答案:

答案 0 :(得分:5)

使用向量运算代替循环以提高效率和简洁

label = (age_new > 100).astype(int).tolist()

答案 1 :(得分:1)

当您使用item()时,您需要为statment示例传递两个参数:

for k,v in dct.items():
    print(k, v)

答案 2 :(得分:0)

您可以使用.values而不是.items()来获取值:

for v in dct.values:
    if v <= 100:
        ...