我有一个数据帧。它包含df['article_id']
。我正在使用to_sql
函数和sqlalchemy
插入我的数据库。然而,有时我有重复的记录,我想删除之前插入
这是我的清单:
usedIDs = []
select_st = select([article_table])
res = conn.execute(select_st)
for _row in res:
clean = int(_row[1])
usedIDs.append(clean)
usedIDs
带输出:
[1202623831,
1747352473,
1748645480,
1759957596,
1811054956,
1812183879,
1816974229,
2450784233,
2579244390,
2580336884]
我试过的:
df[~df.isin(usedIDs)]
df.drop(usedIDs, axis=0)
这是行不通的。 但是,当我像下面这样硬编码它时,它确实可以工作
df = df[~df.article_id.isin(['1202623831','1747352473'])]
错误为unhashable
或KeyError: not found in axis
如何从df['article_id']
在usedIDs
列表中的数据帧中删除行
仅在示例数据上使用“isin”就足够了:
这是因为您已将数据类型从int更改为string
尝试将userid转换为如下字符串:
相关问题 更多 >
编程相关推荐