Как соединить Pyspark Dataframe, который находится между двумя столбцами другого Dataframe? - PullRequest
0 голосов
/ 06 января 2020

У меня есть 2 фрейма данных, один из которых состоит из 1 столбца целых чисел, а 2-й фрейм данных состоит из 3 столбцов (integer_start, integer_end, animal).

фреймы данных и их столбцы

dataframe1 -> integer

dataframe2 -> integer_start, integer_end, animal

Итак, я хочу присоединиться к этим 2 фреймам данных, так что если

dataframe1.integer is in between dataframe2.integer_start and dataframe2.integer_end

займет из dataframe1.integer и соответствующего dataframe2.animal и поместите в новый dataframe3

Надеюсь, вы поможете мне с этим. Я использую PySpark для этого.

1 Ответ

0 голосов
/ 06 января 2020

Привет, вы можете использовать простое соединение, чтобы сделать это.

result= dataframe1.join(dataframe2,[ dataframe2.integer_start <= dataframe1.integer  , dataframe2.integer_end >= dataframe1.integer ], how='inner').select("integer","animal")

Это даст вам именно то, что вам нужно.

В зависимости от того, хотите ли вы включить крайние случаи, вы можете удалите = в <= и> =.

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