我在列表综合方面遇到了问题。我已经编写了以下代码来获取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().
有人可以帮忙吗?
答案 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]]