Como eliminar duplicatas usando condições [duplicado]

Esta pergunta já tem uma resposta aqui:

Como selecionar a primeira linha de cada grupo? 8 respostas

Eu tenho o seguinte DataFramedf:

Como posso excluir duplicatas, mantendo o valor mínimo delevel por cada par duplicado deitem_id ecountry_id.

+-----------+----------+---------------+                                        
|item_id    |country_id|level          |
+-----------+----------+---------------+
|     312330|  13535670|             82|
|     312330|  13535670|            369|
|     312330|  13535670|            376|
|     319840|  69731210|            127|
|     319840|  69730600|            526|
|     311480|  69628930|            150|
|     311480|  69628930|            138|
|     311480|  69628930|            405|
+-----------+----------+---------------+

A saída esperada:

+-----------+----------+---------------+                                        
|item_id    |country_id|level          |
+-----------+----------+---------------+
|     312330|  13535670|             82|
|     319840|  69731210|            127|
|     319840|  69730600|            526|
|     311480|  69628930|            138|
+-----------+----------+---------------+

Eu sei como excluir duplicatas sem condições usandodropDuplicates, mas não sei como fazer isso no meu caso específico.

questionAnswers(1)

yourAnswerToTheQuestion