不知道如何使用.bool()、any、all或empty使这两个不同的示例正常工作。每一个都会抛出一个模糊的值错误
import pandas as pd
first = pd.Series([1,0,0])
second = pd.Series([1,2,1])
number_df = pd.DataFrame( {'first': first, 'second': second} )
bool_df = pd.DataFrame( {'testA': pd.Series([True, False, True]), 'testB': pd.Series([True, False, False])})
#ValueError: The truth value of a Series is ambiguous. Use a.empty, a.bool(), a.item(), a.any() or a.all().
""" both the next two lines fail with the ambiguous Series issue"""
#each row should be true or false
bool_df['double_zero_check'] = (number_df['first'] != 0) and (number_df['second'] != 0 )
bool_df['parity'] = bool_df['testA'] and bool_df['testB']
您需要使用位and(
&
)来比较docs中的系列elementwise-more必须使用按位and(&;)运算符。
and
适用于布尔型,而不是熊猫系列。你知道吗相关问题 更多 >
编程相关推荐