只删除一个双索引

removing just one of double indexes

给出一个pandas.core.series.Series,由两个pandas.core.series.Series组成:

S1 = pd.concat([S,S])
e.g.:|index| value    |
     | --- | -------- |
     |4707 | 25.408939|
     |13292| 24.288939|
     |38063| 22.766040|
     |39458|-16.478080|
     |39571|-15.085605|
     **|4707 | 25.408939|**
     |13292| 24.288939|
     |38063| 22.766040|
     |39458|-16.478080|
     |39571|-15.085605| 

重复索引是有意重复的。 我想不通,我怎样才能删除那些重复的行中的一个,例如粗体行。

额外信息:

print(type(S1))
<class 'pandas.core.series.Series'>

print(type(S1[S1.index[i]]))
<class 'pandas.core.series.Series'>

使用 boolean indexing with | for bitwise OR with mask by Index.duplicated 并通过 ~ 取反并测试不匹配值 4707:

S2 = S1[~S1.index.duplicated() | (S1.index != 4707)]

print (S2)
4707   25.408939
13292  24.288939
38063  22.766040
39458 -16.478080
39571 -15.085605
13292  24.288939
38063  22.766040
39458 -16.478080
39571 -15.085605

或者简单地删除 pd.concat 中的值:

S1 = pd.concat([S,S.drop(4707)])