我遇到 Mixpanel 合并问题,导致随机用户合并在一起。我正在尝试调试这个问题,为此我需要一个 JQL 查询来显示哪些用户拥有超过 1 个(或 X 个)不同的 ID。它们可以是匿名 ID(身份不明的用户)或我的应用程序的 ID。
Mixpanel 在用户仪表板中显示这些不同的 ID:
有没有办法编写 JQL 查询来返回具有超过 X 个不同 ID 的用户?
我正在尝试这个:
function main() {
return Events({
from_date: "2024-08-01",
to_date: "2024-08-08"
})
.groupBy(["distinct_id"], mixpanel.reducer.count())
.filter(result => result.value > 1)
}
但我不确定这是否正确。
如果我理解正确,要真正识别是否有多个“distinct_id”与单个人相关联,您需要锚定每个人唯一的静态属性,例如电子邮件地址、散列电子邮件或...
function main() {
return Events({
from_date: "2024-08-01",
to_date: "2024-08-25"
})
.groupBy(['distinct_id', 'properties.Email'], function(acu, events) { return null })
.reduce(function(acu, events) {
const results = {};
// Collect distinct_ids for each email
events.forEach(function(event) {
const distinctId = event.key[0];
const email = event.key[1];
if (!results[email]) {
results[email] = new Set();
}
results[email].add(distinctId);
});
return Object.entries(results).map(function([email, distinctIds]) {
return {
'User Email': email,
'Distinct IDs': Array.from(distinctIds).join(" - ")
};
});
});
}