Удалить повторяющиеся строки независимо от новой информации -PySpark - PullRequest
0 голосов
/ 04 июня 2018

Скажем, у меня есть такой фрейм данных:

ID         Media
1         imgix.com/20830dk
2         imgix.com/202398pwe
3         imgix.com/lvw0923dk
4         imgix.com/082kldcm
4         imgix.com/lks032m
4         imgix.com/903248

Я хотел бы в итоге:

ID         Media
1         imgix.com/20830dk
2         imgix.com/202398pwe
3         imgix.com/lvw0923dk
4         imgix.com/082kldcm

Даже если это приведет к потере 2 ссылок на ID =4, мне все равно.Есть ли простой способ сделать это в python / pyspark?

Ответы [ 2 ]

0 голосов
/ 04 июня 2018

Антон и Пауль верны:

df.drop_duplicates(subset=['ID']) 

действительно работает

0 голосов
/ 04 июня 2018
  1. Группировка по столбцу ('ID')
  2. Использование collect_list с agg для агрегирования списка
  3. Вызов getItem (0) для извлечения первого элемента из агрегированногосписок

    df.groupBy('ID').agg(collect_list('Media').getItem(0).alias('Media')).show()
    
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...