我有一个有两列的 df 。目标是从Name列中读取数据并向该列添加一个数字Pairing,但如果有多个相同的名称,它们将获得相同的数字。例如:
Name | Pairing
-----------
Charles |1
Scott |2
Scott |2
Anne |3
Anne |3
Anne |3
Bart |4
我尝试过使用str.replace ,但我相信我只能使用关键词。非常感谢任何有关如何解决此问题的提示。谢谢你!
编辑:
所以我做了一些调整,现在我尝试添加第三列:
Name | type | Pairing
---------------------------
Charles |Circle | 1
Scott |Square | 2
Scott |Triangle | 3
Anne |Rectangle | 4
Anne |Rectangle | 4
Anne |Oval | 5
Bart |Octagon | 6
我试图在Pairing列中获取结果,因此只要Name&中匹配的内容type就会获得相同的数值。
我已经尝试过了,这df['Pairing'] = pd.factorize(df['Name'].str[:6])[0] + pd.factorize(df['type'].str[:6])[0]有点有效,但它没有给我准确的结果。
是否还有从 1 而不是 0 开始分解索引的方法?
蝴蝶不菲
相关分类