df =  pd.DataFrame({'A':[3,5,2,5,4,2,5,2,3,1,4,1], 'B':['x','y','x','x','y','z','z','x','y','y','x','z']})
I'd like to add a column C that, for each letter in B, contains sequential integers:
    A  B  C
0   3  x  1
1   5  y  1
2   2  x  2
3   5  x  3
4   4  y  2
5   2  z  1
6   5  z  2
7   2  x  4
8   3  y  3
9   1  y  4
10  4  x  5
11  1  z  3