In[1]:= a = {{2., 3.}, {4., 5.}, {4., 8.}, {4., 9.}, {9., 5.}, {9.,
7.}, {10., 1.}};
In[3]:= b = SplitBy[a, First]
Out[3]= {{{2., 3.}}, {{4., 5.}, {4., 8.}, {4., 9.}}, {{9., 5.}, {9.,
7.}}, {{10., 1.}}}
In[6]:= c = Transpose /@ b
Out[6]= {{{2.}, {3.}}, {{4., 4., 4.}, {5., 8., 9.}}, {{9., 9.}, {5.,
7.}}, {{10.}, {1.}}}
In[25]:= d = c /. {n_List, l_List} :> Join[{n[[1]]}, l]
Out[25]= {{2., 3.}, {4., 5., 8., 9.}, {9., 5., 7.}, {10., 1.}}