Ошибка Значение истинности Серии неоднозначно.Используйте a.empty, a.bool (), a.item (), a.any () или a.all ().при выполнении функции - PullRequest
0 голосов
/ 23 декабря 2018

Я довольно новичок в программировании на Python.В настоящее время я пытаюсь проанализировать фрейм данных, содержащий несколько рабочих процессов.Каждый рабочий процесс имеет различные этапы процесса для запуска и завершения рабочего процесса.Данные имеют уникальный идентификатор в качестве индекса, шаги процесса в виде столбцов и имена в качестве значений.Когда нет доступного имени, строка «na».Для каждого уникального идентификатора я хочу сравнить, отличается ли имя, завершившее рабочий процесс, от имени, инициировавшего рабочий процесс.Для этого я написал функцию с именем samename:

def samename(a, b, c, d, e, f):
    if ((a != "na")
        and  (a == b) |
             (a == c) |
             (a == d) |
             (a == e) |
             (a == f)
        ):
        return "same name ended as initiated"
    else:
        if ((b == "na") &
            (c == "na") &
            (d == "na") &
            (e == "na") &
            (f == "na")
           ):
            return "no name for ending process"
        else:
            return "different name ended"

Я хочу проанализировать различные рабочие процессы, назначив столбцу, который инициирует рабочий процесс, переменную a, и различным столбцам, которые заканчивают рабочий процесс, b, c,д, е, ф.Когда я запускаю код, я получаю ValueError: Истинное значение Серии неоднозначно.Используйте a.empty, a.bool (), a.item (), a.any () или a.all ().

Я несколько раз менял код, используя побитовые операторы и корректируя скобки, но не могу понять проблему с сообщениями об этой ошибке.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...