【发布时间】:2019-09-28 15:36:50
【问题描述】:
我有一个数据框。它包含df['article_id'] 和df['user_id']。
我还有一个 numpy 数组(或一个列表。我认为 np 数组会更快)。其中包含一个 article_id 和一个 user_id。
关键是将 df 与 np 数组进行比较,这样我就可以过滤掉重复的条目。 user_id 和 article_id 都需要是相同的值。所以这个想法是:
if df['article_id'] == nparray[:,0] & df['user_id'] == nparray[:,1]:
remove the row from the dataframe
这是 df & np.array/list 的样子(目前只有 1 个 user_id,但以后会有更多)。因此,如果 np.array 包含来自数据帧的相同值,则应删除数据帧行。:
array([[1127087222, 1],
[1202623831, 1],
[1747352473, 1],
[1748645480, 1],
[1759957596, 1],
[1811054956, 1]])
user_id article_id date_saved
0 1 2579244390 2019-05-09 10:46:23
1 1 2580336884 2019-05-09 10:46:22
2 1 1202623831 2019-05-09 10:46:20
3 1 2450784233 2019-01-11 12:36:44
4 1 1747352473 2019-01-03 21:38:34
期望的输出:
user_id article_id date_saved
0 1 2579244390 2019-05-09 10:46:23
1 1 2580336884 2019-05-09 10:46:22
3 1 2450784233 2019-01-11 12:36:44
我怎样才能做到这一点?
【问题讨论】:
-
你能发布一个数据框、列表和所需输出的小样本吗?
-
@Vink 我添加了一些代码 sn-ps
-
@SomeName: 检查我的更新
标签: python pandas numpy dataframe jupyter-notebook