7

インデックスが一意であることを強制する機能はありますか、それとも dict に変換して元に戻すか、またはそのようなものに変換することによって、Python 'それ自体' でこれを処理することは可能ですか?

以下のコメントに記載されているように、python pandas は numpy/scipy 上に構築されたプロジェクトです。

to_dict と back は機能しますが、大きくなると遅くなるに違いありません。

In [24]: a = pandas.Series([1,2,3], index=[1,1,2])

In [25]: a
Out[25]: 
1    1
1    2
2    3

In [26]: a = a.to_dict()

In [27]: a
Out[27]: {1: 2, 2: 3}

In [28]: a = pandas.Series(a)

In [29]: a
Out[29]: 
1    2
2    3
4

2 に答える 2

7

ところで、近い将来のdrop_duplicatesようにシリーズにメソッドを追加する予定です。DataFrame.drop_duplicates

于 2012-10-20T15:20:44.670 に答える
4

使用groupbyしてlast()

In [279]: s
Out[279]: 
a    1
b    2
b    3
b    4
e    5

In [280]: grouped = s.groupby(level=0)

In [281]: grouped.first()
Out[281]: 
a    1
b    2
e    5

In [282]: grouped.last()
Out[282]: 
a    1
b    4
e    5
于 2012-10-18T20:07:06.083 に答える