我正在嘗試獲取每個唯一組件名稱的首次出現索引,然后將索引附加到串列中。
我有大約 20k 行的資料框。
mylist=[]
for i in df['name']:
mylist.append(df.loc[df.name==i].index[0])
mylist=set(mylist)
如何加快上述程序?從資料幀附加到串列大約需要一分鐘。
uj5u.com熱心網友回復:
沒有資料示例就無法測驗,但這里是:
df.reset_index().groupby('name').first()['index'].to_list()
一個最小的可重現示例如下所示:
pd.DataFrame({'name': ['ABBA', 'LZ', 'LZ', 'LZ', 'IronMaiden', 'PinkFloyd', 'LZ', 'PinkFloyd']})
資料框:
name
0 ABBA
1 LZ
2 LZ
3 LZ
4 IronMaiden
5 PinkFloyd
6 LZ
7 PinkFloyd
期望的結果:
[0, 1, 4, 5]
轉載請註明出處,本文鏈接:https://www.uj5u.com/yidong/360832.html
