我正在尝试返回与我选择的标签相对应的熊猫数据框的行。例如,在我的函数 Female 中,它返回患者为女性的所有行。对于 AgeRange,我遇到了同时满足这两个条件而没有出现错误的问题。
dataset = pd.read_csv('insurance.csv')
def Female(self):
rows = dataset[dataset.sex == 1]
print(rows)
def AgeRange(self):
rows = dataset[dataset.age > 0] & dataset[dataset.age < 20]
print(rows)
使用按位运算符会出现以下错误: TypeError: unsupported operand type(s) for &: 'float' and 'bool'
def AgeRange(self):
rows = dataset[dataset.age > 0] and dataset[dataset.age < 20]
print(rows)
使用布尔值和运算符会得到以下错误: ValueError:DataFrame 的真值是不明确的。使用 a.empty、a.bool()、a.item()、a.any() 或 a.all()。
def AgeRange(self):
rows = np.logical_and(dataset[dataset.age > 0],dataset[dataset.age < 20])
print(rows)
使用 numpy 逻辑并得到错误:ValueError:操作数无法与形状(1309,7)(135,7)一起广播。
老实说,我不确定这会给我留下什么,或者首先是什么导致了这个问题。谁能帮忙指出我哪里出错了?