本文介绍: ValueError: The truth value of a DataFrame is ambiguous. Use a.empty, a.bool(), a.item(), a.any() or a.all().异常解决方法遇到的情况是使用 `if` 判断可能pd.DataFrame 数据变量。我需要根据 `flag` 的值决定返回值

ValueError: The truth value of a DataFrame is ambiguous. Use a.empty, a.bool(), a.item(), a.any() or a.all().异常解决方法

遇到的情况是使用 if 判断可能pd.DataFrame 数据变量。我需要根据 flag 的值决定返回值

错误代码

import pandas as pd

def get_df(flag):
    flag = flag  # 标志
    df = pd.DataFrame()  # 模拟数据
    if flag:
        df = df
    else:
        df = None
    return df

data = get_df(flag=True)

# 错误片段
if data:
    print(data)
else:
    print(data)

改正

判断 data类型是否是 pd.DataFrame执行下面代码

在后面使用过程中,还遇到判断pd 数据 是否为空使用 pddata.empty 即可

# 例子 字符串 isinstance(value, str)
if isinstance(data, pd.DataFrame):
    print(data)
else:
    print(data)

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注