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





リストを空で作って、データを入れる場合に入れる、入ってる時だけその後の処理というロジックを作ったら、なんかエラーになりました。

list = []
list = fetch(xxx)

if list:
   xxx

みたいなのをやったら、ifの部分で内容が曖昧というエラー
イケてないけど、一旦

if len(list) > 0:

みたいにbool型に絶対になるようにして突破。
多分もっと良い方法があるけど、わかる方いらっしゃったら募集中。
脳みそ回らないー

追記:
少しわかりました、これlistは配列で作ってるのに、fetchの変数はデータフレームで帰ってきてた。
なので、やるなら、こんな感じが正しかったです。

list = pd.DataFrame()
list = fetch(xxx)

if not list.empty:

もっとスタイリッシュな書き方はあるかもですけど、一旦こんな感じで。