示例#1
0
def convertCounterToRate(timelyMetric, analyticConfig):
    # Adjust counter metric into a rate metric
    df = timelyMetric.getDataFrame()
    columnNames = df[analyticConfig.groupByColumn].unique()
    df = DataOperations.pivot(df, timelyMetric.metric, analyticConfig.groupByColumn)
    df = DataOperations.resample(df, analyticConfig.sample, how=analyticConfig.how)
    for c in columnNames:
        df[c] = df[c].diff(1) / (analyticConfig.sample_minutes * 60 * 1000)
    df = DataOperations.unpivot(df, timelyMetric.metric, analyticConfig.groupByColumn)
    df = df.dropna()
    timelyMetric.setDataFrame(df)