Cómo eliminar duplicados basados ​​en dos o más criterios de subconjuntos en el dataframe de Pandas

Digamos que este es mi dataframe

df = pd.DataFrame({ 'bio' : ['1', '1', '1', '4'], 'center' : ['one', 'one', 'two', 'three'], 'outcome' : ['f','t','f','f'] }) 

Se parece a esto …

  bio center outcome 0 1 one f 1 1 one t 2 1 two f 3 4 three f 

Quiero eliminar la fila 1 porque tiene la misma biografía y centro que la fila 0. Quiero mantener la fila 2 porque tiene la misma biografía pero el centro es diferente a la fila 0.

Algo como esto no funcionará basado en la estructura de entrada drop_duplicates pero es lo que estoy tratando de hacer

 df.drop_duplicates(subset = 'bio' & subset = 'center' ) 

Alguna sugerencia ?

edición: se modificó un poco df para encajar el ejemplo con la respuesta correcta

Tu syntax es incorrecta. Aquí está la forma correcta:

 df.drop_duplicates(subset=['bio', 'center', 'outcome']) 

O en este caso específico, simplemente:

 df.drop_duplicates() 

Ambos devuelven lo siguiente:

  bio center outcome 0 1 one f 2 1 two f 3 4 three f 

Eche un vistazo a la documentación de df.drop_duplicates para obtener detalles de la syntax. subset debe ser una secuencia de tags de columna.