petl从重复条目转换数据

时间:2018-05-24 03:15:16

标签: python etl petl

尝试使用petl库来构建在两个表之间复制数据的ETL过程。该表在目标上包含唯一的slug字段。为此,我编写了我的脚本,以便识别重复的slu and并通过将ID附加到slug值来转换它们。

    table = etl.fromdb(source_con, 'SELECT * FROM user')
    # get whatever remains as duplicates
    duplicates = etl.duplicates(table, 'slug')
    for dup in [i for i in duplicates.values('id')]:
        table = etl.convert(
            table,
            'slug',
            lambda v, row: '{}-{}'.format(slugify_unicode(v), str(row.id).encode('hex')),
            where=lambda row: row.id == dup,
            pass_row=True
        )

上面没有按预期工作,似乎table对象在循环后仍然具有重复值。

任何人都可以提供建议吗? 感谢

0 个答案:

没有答案