微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

Python 错误:系列的真值不明确

如何解决Python 错误:系列的真值不明确

我遇到了一个错误Truth value of a Series is ambiguous. Use a.empty,a.bool(),a.item(),a.any() or a.all() 我理解这个错误的上下文,但我无法解决这个问题。这里的 psfloatNnN 的列表,就是这样。在这种情况下,是什么导致处理 if 语句不明确? 它在第 3、5、9 行以及最后在 sort 语句中给出错误

               for item in candidates:
                    print("I am candidate loop \n",item)
                    ps=2*tmp3[0,i]/((diagonal.loc[x1])["pc"]+(diagonal.loc[item+1])["pc"])
                    print(ps)
                    if ps > 0:
                        if len(out)<k:
                            out.append([ps,item+1])
                        else:
                            if ps > min(out,key=lambda x:x[0])[0]):
                                out.remove(min(out,key=lambda x:x[0]))
                                out.append([ps,item+1])
                    else:
                        pass
                    i+=1
    
                out.sort()
                out.reverse()

我在 this 平台上遵循了这个解决方案也尝试了这种方式,以防万一如果所有值都大于 zero if 循环继续,但它会在 out.sort() 上给出相同的错误

for item in candidates:
                    print("I am candidate loop \n",i]/((diagonal.loc[x1])["pc"]+(diagonal.loc[item+1])["pc"])
                    print(ps)
                    if (ps > 0).all():
                        if len(out)<k:
                            out.append([ps,item+1])
                        else:
                            if (ps > min(out,key=lambda x:x[0])[0]).all():
                                out.remove(min(out,item+1])
                    else:
                        pass
                    i+=1
    
                out.sort()
                out.reverse()

任何形式的帮助将不胜感激!

提前致谢!

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。