由于代码中标识符的切换,我的配置文件重复。我现在想合并重复的配置文件,也合并事件/活动提要。
我通过调用使API正常工作
deduplicate_people(prop_to_match='$email',merge_props=True,case_sensitive=False,backup=True,backup_file=None)
实际上已删除了重复项,但事件/活动供稿未合并。所以我放弃了很多活动。
是否可以同时删除重复项和合并事件/活动供稿?
发生重复是因为由于标识符的更改,某些人将ID用作其他人的电子邮件,而另一些人将电子邮件用作distant_id。该事件通过该ID引用或通过电子邮件发送给相应的人。
所以这就是我最终要为人及其事件重新创建身份映射的方法:
我使用Mixpanel的API(export_people / export_events)创建人员和事件的备份。我编写了一个脚本,该脚本为使用实际ID而不是电子邮件的人(不考虑$ distinct_id的内容,每个人都有一个$ email字段)创建了一个映射“ distinct_id 电子邮件”。
然后我检查了所有导出的事件。对于每个ID为distinct_id的事件,我都使用了映射,将那个distinct_id更改为电子邮件。更新的事件保存在JSON文件中。因此,使用电子邮件作为distinct_id创建了从事件到人的引用,否则将丢失事件。
然后,我继续使用Mixpanel中的重复数据删除API删除所有重复数据-从而丢失了一些事件。现在,我从上一步中导入了事件,这使我丢失了那些丢失的事件。
使用此方法之前需要考虑的三个开放性问题:
我相信重复数据删除实际上不会删除事件。因此,通过再次导入它们,系统中可能存在重复的事件,这些事件只是未被引用到某个人,并且可能会在某个时刻显示。
$ email的重复数据删除确实使使用电子邮件的人员保留为distinct_id,并删除了具有实际ID的人员。我不知道这是不是每次都是真的,或者可能是巧合。对于仍然将ID用作distinct_id的人员,我的方法将失败。
我想通常不建议像这样来篡改distinct_id,因为犯错可能会导致数据丢失。因此,请确保正确。.