我有一个具有高度冗余数据的数据帧,因此我想将这个数据帧复制到一个新的数据帧,设置我的索引列的最大冗余。
在下面的示例中,"pop“是我的索引列;在我的新数据帧中,我希望将最大冗余度设置为2:
data = {"state":["Ohio","Ohio","Ohio","Nevada","Nevada"],
'year' : [2000,2001,2002,2001,2002],'pop' : ["pop1", "pop1","pop1","pop2","pop2"]}
frame = pd.DataFrame(data)
frame = frame.set_index('pop')
发布于 2015-07-28 07:50:54
您可以结合使用groupby
和head(n)
来返回每个组的第一个n
行:
frame.groupby('pop').head(2)
Out[32]:
pop state year
0 pop1 Ohio 2000
1 pop1 Ohio 2001
3 pop2 Nevada 2001
4 pop2 Nevada 2002
发布于 2015-07-28 08:00:27
以下是Wes McKinney如何实现filtering duplicates。dataframe对象目前支持drop_duplicates方法,但它将采用groupby方法来实现您想要的内容。
https://stackoverflow.com/questions/31665071
复制相似问题