我需要通过以下方式在熊猫的一系列数字中添加字母:
在一栏中我有[1,1,1,2,2,3,3,3,3]
我需要再获得一列[1a,1b,1c,2a,2b,3a,3b,3c,3d]
在Excel中,通过应用以下公式即可完成
:=if(A2=A1),(A2&(CHAR(Code(right(B1,1))+1))),(a2&"a"))
我想知道这种Excel方法是否可以在Pandas中复制。
答案 0 :(得分:4)
如果您确定重复的次数不超过字母表中的字母,则可以执行以下操作:
s = pd.Series([1,1,1,2,2,3,3,3,3] )
letters = np.array(list('abcdefgh'))
s.astype(str) + letters[s.groupby(s).cumcount()]
输出:
0 1a
1 1b
2 1c
3 2a
4 2b
5 3a
6 3b
7 3c
8 3d
dtype: object