Convertir la columna de pandas de cadenas separadas por comas en variables ficticias

En mi dataframe, tengo una variable categórica que me gustaría convertir en variables ficticias. Esta columna, sin embargo, tiene varios valores separados por comas:

0 'a' 1 'a,b,c' 2 'a,b,d' 3 'd' 4 'c,d' 

En última instancia, me gustaría tener columnas binarias para cada posible valor discreto; en otras palabras, el recuento final de la columna es igual al número de valores únicos en la columna original. Me imagino que tendría que usar split () para obtener cada valor por separado, pero no estoy seguro de qué hacer después. Cualquier sugerencia muy apreciada!

Edición: giro adicional. La columna tiene valores nulos. Y en respuesta al comentario, la siguiente es la salida deseada. ¡Gracias!

  abcd 0 1 0 0 0 1 1 1 1 0 2 1 1 0 1 3 0 0 0 1 4 0 0 1 1 

Utilice str.get_dummies

 df['col'].str.get_dummies(sep=',') abcd 0 1 0 0 0 1 1 1 1 0 2 1 1 0 1 3 0 0 0 1 4 0 0 1 1 

La función str.get_dummies no acepta el parámetro de prefix , pero puede cambiar el nombre de los nombres de columna del DataFrame ficticio devuelto:

 data['col'].str.get_dummies(sep=',').rename(lambda x: 'col_' + x, axis='columns')