Итак, здесь есть пара вопросов. Во-первых, как говорится в ошибке, вы можете сравнивать только идентично помеченные кадры данных. Ваш нет. В одном столбец помечен "COMPUTED_AIR_SPEED"
, а в другом столбец помечен "VREF_AT_LANDING"
. Вот тут-то и возникает ошибка. Если вы дадите столбцам одинаковую метку и будете различать guish между двумя наборами данных по имени, которое вы дадите переменной DataFrame, вы не получите эту ошибку.
Когда вы исправите это, вы найду другую ошибку. Эти выражения не разрешаются до одного логического значения True
или False
. Он возвращает серию, которая имеет True
или False
для каждой строки, в зависимости от того, какой DataFrame имел большее значение в этом индексе. Поэтому следующим шагом является уменьшение значения с использованием .any()
или .all()
.
Если вы хотите, чтобы он отправлял результат «нестабильного подхода» в файл, если ЛЮБОЙ из строк больше в одном DataFrame, чем другой, используйте .any()
, если вам нужно, чтобы все они были лучше перед отправкой результата, используйте .all()
.
Наконец, предыдущий шаг даст вам Серию с одним логическим значением вместо логического. Просто нажмите .any()
в конце, чтобы получить логическое значение:
if ((cas>vref_new).any().any() or (vref>cas)).any().any():
....