熊猫数据框基于另一列的唯一值的非唯一值

时间:2020-06-11 16:13:53

标签: python-3.x pandas numpy pandas-groupby

我有一个Pandas数据框,我想获取一个唯一事件的所有唯一年份的列表。我不在乎DIRECTION列,我只想要DATE的列表。我不一定非要DATE是唯一的,因为有时同一日期有多个ID,但是我不需要所有的DIRECTION' s为同一日期。

熊猫df

ID DIRECTION DATE
ABA Z 2019
ABA N 2019
ABA E 2019
ABB Z 2019
ABB N 2019
ABB E 2019
ABC Z 2020
ABC N 2020
ABC E 2020

预期产量

[2019, 2019, 2020]

实际输出

[2019, 2020]

当前代码

ids=df['ID'].unique().tolist()
dates=df['DATE'].unique().tolist()
labels, counts = np.unique(dates, return_counts=True)

**

len(counts) == 2
#I want len(counts) == 3

1 个答案:

答案 0 :(得分:0)

IIUC,您希望每个id具有唯一的日期,然后将它们串联成一个数组:

np.concatenate(df.groupby('ID')['DATE'].unique().values)

输出:

array([2019, 2019, 2020])