如何把两个条件放在一起在蟒蛇熊猫


frames 
Datetime                   ratio               dif
2022-06-09 12:33:00 -0.3861241598107547     -299.50183804712964
2022-06-09 12:34:00 -0.360130489922861      -274.88184087028105
2022-06-09 12:35:00 -0.22108950904852795    -166.02672464097395
2022-06-09 12:36:00 -0.18316426991752388    -135.2928226604197
2022-06-09 12:37:00 -0.09932437001820388    -72.14644129886278
2022-06-09 12:38:00 -0.0820362738010348     -58.58522049972339

我想数一下dif>15和比率>0.05所以我测试了下面的

total_enhancements = (frames['dif'] > 15 & frames['ratio'] > 0.05 ).sum()

输出为

TypeError:不能执行'rand_'与dtyped [float64]数组和类型为[bool]的标量

我该怎么做呢?

您需要使用括号或使用Series.gt

total_enhancements = ((frames['dif'] > 15) & (frames['ratio'] > 0.05)).sum()

或:

total_enhancements = (frames['dif'].gt(15) & frames['ratio'].gt(0.05)).sum()

或:

total_enhancements = frames['dif'].gt(15).mul(frames['ratio'].gt(0.05)).sum()

最新更新