多行的itertools.product()

我的df看起来像

a  b   c   
0  1   nan  
0  2   3   
0  3   nan 
1  1   nan 

我需要像itertools.product()这样的组合来组合“ a”组中的行中的条目。这里有2种可能的方式,因为第二行具有2个不同的值:

   a  b   
1  0  1    
   0  2   
   0  3 
2  0  1
   0  3
   0  3 
3  1  1  

有任何想法吗?