Beispiel #1
0
def failureRetetion(top10MasterList):
    pipeLine = [{
        "$match": {
            "eventKey": "challengeFailure",
            "eventValue.topicId": top10MasterList
        }
    }, {
        "$group": {
            "_id": None,
            "users": {
                "$addToSet": "$user"
            }
        }
    }]
    completeMasterNum = len(list(events.aggregateMaster(pipeLine)))

    pipeLine = [{
        "$match": {
            "eventKey": "startChallenge",
            "eventValue.topicId": top10MasterList
        }
    }, {
        "$group": {
            "_id": None,
            "users": {
                "$addToSet": "$user"
            }
        }
    }]
    startMasterNum = len(list(events.aggregateMaster(pipeLine)))

    return getPercent.getPerNum(completeMasterNum, startMasterNum)
Beispiel #2
0
def failureRetetion(top10MasterList):
    pipeLine = [
        {"$match": {"eventKey": "challengeFailure", "eventValue.topicId": top10MasterList}},
        {"$group": {"_id": None, "users": {"$addToSet": "$user"}}},
    ]
    completeMasterNum = len(list(events.aggregateMaster(pipeLine)))

    pipeLine = [
        {"$match": {"eventKey": "startChallenge", "eventValue.topicId": top10MasterList}},
        {"$group": {"_id": None, "users": {"$addToSet": "$user"}}},
    ]
    startMasterNum = len(list(events.aggregateMaster(pipeLine)))

    return getPercent.getPerNum(completeMasterNum, startMasterNum)
Beispiel #3
0
def successFinishRetetion(top10MasterList):
    pipeLine = [
        {
            "$match": {
                "eventKey": {"$in": ["challengeFailure", "challengeSuccess"]},
                "eventValue.topicId": {"$in": top10MasterList},
            }
        },
        {"$group": {"_id": None, "users": {"$addToSet": "$user"}}},
    ]
    successAndFailureNum = len(list(events.aggregateMaster(pipeLine)))

    pipeLine = [
        {"$match": {"eventKey": "startChallenge", "eventValue.topicId": {"$in": top10MasterList}}},
        {"$group": {"_id": None, "users": {"$addToSet": "$user"}}},
    ]
    finishNum = len(list(events.aggregateMaster(pipeLine)))

    return getPercent.getPerNum(successAndFailureNum, finishNum)
Beispiel #4
0
def successFinishRetetion(top10MasterList):
    pipeLine = [{
        "$match": {
            "eventKey": {
                "$in": ["challengeFailure", "challengeSuccess"]
            },
            "eventValue.topicId": {
                "$in": top10MasterList
            }
        }
    }, {
        "$group": {
            "_id": None,
            "users": {
                "$addToSet": "$user"
            }
        }
    }]
    successAndFailureNum = len(list(events.aggregateMaster(pipeLine)))

    pipeLine = [{
        "$match": {
            "eventKey": "startChallenge",
            "eventValue.topicId": {
                "$in": top10MasterList
            }
        }
    }, {
        "$group": {
            "_id": None,
            "users": {
                "$addToSet": "$user"
            }
        }
    }]
    finishNum = len(list(events.aggregateMaster(pipeLine)))

    return getPercent.getPerNum(successAndFailureNum, finishNum)
Beispiel #5
0
def completionRate(mEvent, dEvent, top10TopicsList):
    m = dataset.aggregateTopic(mEvent, top10TopicsList)
    mNum = len(m['user']) + len(m['device'])
    d = dataset.aggregateTopic(dEvent, top10TopicsList)
    dNum = len(d['user']) + len(d['device'])
    return getPercent.getPerNum(mNum, dNum)
Beispiel #6
0
def completionRate(mEvent, dEvent, top10TopicsList):
    m = dataset.aggregateTopic(mEvent, top10TopicsList)
    mNum = len(m['user']) + len(m['device'])
    d = dataset.aggregateTopic(dEvent, top10TopicsList)
    dNum = len(d['user']) + len(d['device'])
    return getPercent.getPerNum(mNum,dNum)