2015-09-21 176 views
2

我想刪除我的數據框(df)具有唯一值作爲索引的行。這是我的DF:熊貓:刪除具有唯一索引值的數據幀行

A  B 
1 3.803 4.797 
1 3.276 3.878 
2 5.181 6.342 
3 6.948 9.186 
3 8.762 10.136 
4 10.672 12.257 
4 8.266 13.252 
5 13.032 14.656 
6 15.021 17.681 
6 16.426 15.07 

我想與指數= 2,5刪除的行獲得一個新的數據框(df_new)如下:

A  B 
1 3.803 4.797 
1 3.276 3.878 
3 6.948 9.186 
3 8.762 10.136 
4 10.672 12.257 
4 8.266 13.252 
6 15.021 17.681 
6 16.426 15.07 

是否有大熊貓一些方便的功能要做到這一點? 謝謝

+0

旁白:雖然你的問題是完全合理的,有重複的指數導致夠了苦頭在實踐中通常應該避免,除非作爲中間步驟。 – DSM

+0

我完全同意。 Hovewer,在我的情況下,索引表示重複測量,這是我看到的唯一方法,指的是重複... – diegus

回答

3

使用get_duplicates

In [36]: 
df.loc[df.index.get_duplicates()] 

Out[36]: 
     A  B 
1 3.803 4.797 
1 3.276 3.878 
3 6.948 9.186 
3 8.762 10.136 
4 10.672 12.257 
4 8.266 13.252 
6 15.021 17.681 
6 16.426 15.070 

get_duplicates返回複製指數的數組:

In [37]: 
df.index.get_duplicates() 

Out[37]: 
[1, 3, 4, 6] 
+0

謝謝,這工作正常! – diegus