如果条件不满足,为什么带有条件的np.where不适用于数据帧中的仅一行

这是一个例子:

cars2 = {'Brand': ['Hon*da\nCivic', 'BM*AMT*B6*W'],'Price': [22000, 55000]}

df2 = pd.DataFrame(cars2, columns = ['Brand', 'Price'])


df2['Allowed_Amount'] = np.where(
                df2['Brand'].apply(lambda x: x.count("AMT" + "*" + "B6") > 0),
                df2['Brand'].str.split("AMT" + "*").str[1].str.split("B6").str[1].str[1:].str.split('\n').str[0], 0.00)

输出:

           Brand  Price Allowed_Amount
0  Hon*da\nCivic  22000              0
1    BM*AMT*B6*W  55000              W

这正是我所需要的。

但是,如果df仅包含不满足条件的一行,则会收到错误消息:

cars = {'Brand': ['Hon*da\nCivic'],'Price': [22000]}

df = pd.DataFrame(cars, columns = ['Brand', 'Price'])

df['Allowed_Amount'] = np.where(
                    df['Brand'].apply(lambda x: x.count("AMT" + "*" + "B6") > 0),
                    df['Brand'].str.split("AMT" + "*").str[1].str.split("B6").str[1].str[1:].str.split('\n').str[0], 0.00)

输出:

AttributeError: Can only use .str accessor with string values!

我需要的:

           Brand  Price Allowed_Amount
0  Hon*da\nCivic  22000              0

不满足条件时为什么不退出?如何使此代码也能与一行一起工作?