Анализ иерархических данных с использованием графических фреймов в Pyspark - PullRequest
0 голосов
/ 14 апреля 2020

У меня есть набор данных с отношениями Родитель-ребенок. Предположим, в нем есть столбцы PARENT_ID, CHILD_ID, FLAG1, FLAG2

Мое требование состоит в том, чтобы получить все PARENT_ID с FLAG1='Y' and FLAG2='N', у которых есть некоторый ребенок в его иерархии, с FLAG1=Y and FLAG2='Y'

Например:

enter image description here

В приведенном выше случае:

Родители действительны для анализа: 1, 2, 4, 5, 6 (так что это может быть вершина в графических рамках, если мое понимание верно)

  • PARENT_ID = 1 было бы положительным случаем, потому что у него есть один из его потомков потомков ... в его иерархии (3), которая имеет FLAG1=Y and FLAG2=Y
  • PARENT_ID = 2 будет положительным случаем, потому что у него есть один из его потомков потомков ... в его иерархии (3), который имеет FLAG1=Y and FLAG2=Y
  • PARENT_ID = 4,5,6 будет отрицательным случаем поскольку он не имеет ни одного из своих иерархических потомков, которые удовлетворяют условию
...