【发布时间】:2019-04-04 06:21:56
【问题描述】:
我有一个有点大的 pandas 数据框 (100,000x9)。前两列是与值相关联的名称组合(两侧)。我想删除与给定组合关联的较低值。
我还没有尝试过任何事情,因为我不确定如何解决这个问题。我的第一印象是我需要在数据框上使用apply函数,但我需要选择'first'和'second'的每个组合,比较它们然后删除该行。
df = pd.DataFrame(np.array([['John','Mary',5],['John','Mark',1], ['Mary','John',2], ['Mary','Mark',1], ['Mark','John',3], ['Mark','Mary',5]]), columns=['first','second','third'])
df
first second third
0 John Mary 5
1 John Mark 1
2 Mary John 2
3 Mary Mark 1
4 Mark John 3
5 Mark Mary 5
我的目标是得到这个数据框
df_clean = pd.DataFrame(np.array([['John','Mary',5], ['Mark','John',3], ['Mark','Mary',5]]), columns=['first','second','third'])
df_clean
first second third
0 John Mary 5
1 Mark John 3
2 Mark Mary 5
有什么想法吗?
【问题讨论】: