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()