首页 > 解决方案 > 使每个唯一 ID 号 NAT 的熊猫数据框

问题描述

我有一个数据框,对于每个 unqiue ID,使第一个“Diff”列 NaT,例如我的数据开始看起来像

index   DEVICE_ID      DIFF
0        12             Nat
1        12              20
2        12              30
3        13              40
4        13              40
5        13              21
6        14               9
7        14              10    

但我希望生成的数据框看起来像下面的数据框

index   DEVICE_ID      DIFF
0        12             Nat
1        12              20
2        12              30
3        13             Nat
4        13              40
5        13              21
6        14             Nat
7        14              10

对不起措辞不佳的问题

标签: pythonpandasdataframe

解决方案


使用df.duplicated()df.loc

df.loc[~df.DEVICE_ID.duplicated(),'DIFF'] = pd.NaT
>>df

   index  DEVICE_ID DIFF
0      0         12  NaT
1      1         12   20
2      2         12   30
3      3         13  NaT
4      4         13   40
5      5         13   21
6      6         14  NaT
7      7         14   10

推荐阅读