2
に文字を追加:フィルターの重複と私は、次のデータフレームに取り組んでいます各項目
print (df)
LN FN
0 Smith Jason
1 Smith Pat
2 Smith Liz
3 Kim Jim
4 Hazel Vickie
5 Sun Sandra
は私が[「LN」]に重複名をフィルタリングしてから名前の最初の文字を入れたいです['FN']。この例では、['LN']のスペースを使って 'Smith'に 'J'、 'P'、 'L'を追加したいと思います。
所望の出力が次のようになります。
print (df)
LN FN
0 Smith J Jason
1 Smith P Pat
2 Smith L Liz
3 Kim Jim
4 Hazel Vickie
5 Sun Sandra
私の試み:以下
私のコードは、所望の出力を達成したが、これを達成するための、よりクリーンでパンダのような方法があるはずです。
df1 = df.loc[df.duplicated('LN', False)]
df2 = pd.DataFrame(df1.LN + ' '+ df1.FN.str.get(0))
df3 = pd.concat([df1,df2], axis=1)
df3 = df3[[0, 'FN']]
df3.columns = ['LN', 'FN']
df.update(df3)
ありがとうございました!
はあなたの助けのためにありがとうございました! – comproch