熊猫的列表综合

时间:2019-09-04 09:43:37

标签: python list-comprehension

我在列表综合方面遇到了问题。我已经编写了以下代码来获取nan的列表,其中df第二栏中的值为True

[np.nan for name in data_col.iloc[:,0] if data_col.iloc[:,1]==True]

我收到错误,而不是预期的输出:

ValueError: The truth value of a Series is ambiguous. Use a.empty, a.bool(), a.item(), a.any() or a.all().

有人可以帮忙吗?

1 个答案:

答案 0 :(得分:1)

在您的if语句中,每次循环并执行if语句时,您都将返回整个列表

for x in range(len(data_col.iloc[:,0])):
    if data_col.iloc[x,1]:
        np.nan

这应该行得通,但我通常不写任何衬纸。

[np.nan for x in range(len((data_col.iloc[:,0])) if data_col.iloc[x,1]]