首页 > 解决方案 > 当一列中有多行重复值时选择第一行

问题描述

当一列中有多行重复值时,我想选择第一行。

例如:

import pandas as pd
df = pd.DataFrame({'col1':['one', 'one', 'one', 'one', 'one', 'one', 'one', 'one'], 
                   'col2':['ID=ABCD1234', 'ID=ABCD1234', 'ID=ABCD1234', 'ID=ABCD5678', 
                           'ID=ABCD5678', 'ID=ABCD5678', 'ID=ABCD9102', 'ID=ABCD9102']})

熊猫数据框如下所示:

print(df)
  col1         col2
0  one  ID=ABCD1234
1  one  ID=ABCD1234
2  one  ID=ABCD1234
3  one  ID=ABCD5678
4  one  ID=ABCD5678
5  one  ID=ABCD5678
6  one  ID=ABCD9102
7  one  ID=ABCD9102

我希望选择第 0 行、第 3 行和第 6 行并将其作为新数据框输出。

预期输出:

      col1         col2
    0  one  ID=ABCD1234
    3  one  ID=ABCD5678
    6  one  ID=ABCD9102

标签: pythonpandasdataframe

解决方案


您可以使用:

df.drop_duplicates(subset = ['col2'], keep = 'first', inplace = True) 

推荐阅读