Beispiel #1
0
def api_test(experiment_id_number):
    """Prepare an experiment already uploaded to the db
    to be run against the model"""

    clean_experiment_number = int(experiment_id_number)
    try:
        query = db.session.query(Sensor)
        df = pd.read_sql_query(query.statement, query.session.bind)
        df2 = df[df['experiment_id'] == clean_experiment_number]
        current_app.logger.debug(df2)
        current_app.logger.debug('run resolve_acc_gyro')
        df2 = resolve_acc_gyro_db(df2)
        current_app.logger.debug(df2)
        current_app.logger.debug('run create_rm_feature')
        df2 = create_rm_feature(df2, TIME_SEQUENCE_LENGTH)
        current_app.logger.debug(df2)
        test_data = blank_filter(df2)
        current_app.logger.debug(test_data)

        # TODO: NEED TO MAKE SURE FEATURE NUMBER IS THE SAME
        #Xt = df2.drop(['state', 'index'], axis=1)
        Xt = polynomial_features.fit_transform(test_data)
        current_app.logger.debug(Xt)
        return Xt

    except Exception as e:
        current_app.logger.debug('error: {}'.format(e))
        abort(500)
Beispiel #2
0
def prep():
    """prepare the raw sensor data"""

    #1 Your mount
    ymount_td = combine_setState_createFeatures('your_mount_raw_data',
                                                'your_mount')
    #2 Your side control
    ysc_td = combine_setState_createFeatures('your_side_control_raw_data',
                                             'your_side_control')
    #3 Your closed guard
    ycg_td = combine_setState_createFeatures('your_closed_guard_raw_data',
                                             'your_closed_guard')
    #4 Your back control
    ybc_td = combine_setState_createFeatures('your_back_control_raw_data',
                                             'your_back_control')
    #5 Opponent mount or opponent side control
    omountsc_td = combine_setState_createFeatures(
        'opponent_mount_and_opponent_side_control_raw_data',
        'opponent_mount_or_sc')
    #6 Opponent closed guard
    ocg_td = combine_setState_createFeatures('opponent_closed_guard_raw_data',
                                             'opponent_closed_guard')
    #7 Opponent back control
    obc_td = combine_setState_createFeatures('opponent_back_control_raw_data',
                                             'opponent_back_control')
    #8 "Non jiu-jitsu" motion
    nonjj_td = combine_setState_createFeatures('non_jj_raw_data', 'non_jj')

    training_data = concat_data([
        ymount_td, ysc_td, ycg_td, ybc_td, omountsc_td, ocg_td, obc_td,
        nonjj_td
    ])
    # remove NaN
    training_data = blank_filter(training_data)
    return training_data
def api_test(experiment_id_number):
    """Prepare an experiment already uploaded to the db
    to be run against the model"""

    clean_experiment_number = int(experiment_id_number)
    try: 
        query = db.session.query(Sensor)
        df = pd.read_sql_query(query.statement, query.session.bind)
        df2 = df[df['experiment_id']==clean_experiment_number]
        current_app.logger.debug(df2)
        current_app.logger.debug('run resolve_acc_gyro')
        df2 = resolve_acc_gyro_db(df2)
        current_app.logger.debug(df2)
        current_app.logger.debug('run create_rm_feature')
        df2 = create_rm_feature(df2, TIME_SEQUENCE_LENGTH)
        current_app.logger.debug(df2)
        test_data = blank_filter(df2)
        current_app.logger.debug(test_data)

        # TODO: NEED TO MAKE SURE FEATURE NUMBER IS THE SAME
        #Xt = df2.drop(['state', 'index'], axis=1)
        Xt = polynomial_features.fit_transform(test_data)
        current_app.logger.debug(Xt)
        return Xt

    except Exception as e:
            current_app.logger.debug('error: {}'.format(e))
            abort(500)
Beispiel #4
0
def prep_test(el_file):
    el_file = DIR + '/data/test_cases/' + el_file
    df = pd.DataFrame()
    df = pd.read_csv(el_file, index_col=None, header=0)
    df = resolve_acc_gyro(df)
    df = create_rm_feature(df, TIME_SEQUENCE_LENGTH)
    test_data = blank_filter(df)

    return test_data
def prep_test(el_file):
    el_file = DIR + '/data/test_cases/' + el_file
    df = pd.DataFrame()
    df = pd.read_csv(el_file, index_col=None, header=0)
    df = resolve_acc_gyro(df)
    df = create_rm_feature(df, TIME_SEQUENCE_LENGTH)
    test_data = blank_filter(df)

    return test_data
Beispiel #6
0
def prep_test(test_file, real_test=False):
    """ prepares test data to check for algorithm accuracy
    so does not set the state
    """

    el_file = 'data/test_cases/' + test_file
    df = pd.DataFrame()
    df = pd.read_csv(el_file, index_col=None, header=0)

    if real_test == True:
        df = resolve_acc_gyro_labels(df)
    else:
        df = resolve_acc_gyro(df)

    df = create_features(df, _window=40, test=True, label_test=real_test)
    test_data = blank_filter(df)

    return test_data
Beispiel #7
0
def prep(window=40):
    """prepare the raw sensor data
    the argument window determines the size of the sliding selection window
    for the time series. Given that data has been collected at a frequency of 
    25Hz, a sliding window of 40 will give you combined data windows 
    of 1.6 seconds.
    """

    #1 Your mount
    ymount_td = combine_state_features('your_mount_raw_data', 'your_mount',
                                       window, 0)
    #2 Your side control
    ysc_td = combine_state_features('your_side_control_raw_data',
                                    'your_side_control', window, 0)
    #3 Your closed guard
    ycg_td = combine_state_features('your_closed_guard_raw_data',
                                    'your_closed_guard', window, 0)
    #4 Your back control
    ybc_td = combine_state_features('your_back_control_raw_data',
                                    'your_back_control', window, 0)
    #5 Opponent mount or opponent side control
    omountsc_td = combine_state_features(
        'opponent_mount_and_opponent_side_control_raw_data',
        'opponent_mount_or_sc', window, 0)
    #6 Opponent closed guard
    ocg_td = combine_state_features('opponent_closed_guard_raw_data',
                                    'opponent_closed_guard', window, 0)
    #7 Opponent back control
    obc_td = combine_state_features('opponent_back_control_raw_data',
                                    'opponent_back_control', window, 0)
    #8 "Non jiu-jitsu" motion
    nonjj_td = combine_state_features('non_jj_raw_data', 'non_jj', window, 0)
    #9 "stand up" motion
    stand_up_td = combine_state_features('standing_up_raw_data',
                                         'opponent_closed_guard', window, 1)

    training_data = concat_data([
        ymount_td, ysc_td, ycg_td, ybc_td, omountsc_td, ocg_td, obc_td,
        nonjj_td, stand_up_td
    ])
    # remove NaN
    training_data = blank_filter(training_data)
    return training_data
def prep():
    """prepare the raw sensor data"""

    #1 Your mount
    ymount_td = combine_setState_createFeatures('your_mount_raw_data', 'your_mount')
    #2 Your side control
    ysc_td = combine_setState_createFeatures('your_side_control_raw_data', 'your_side_control')
    #3 Your closed guard
    ycg_td = combine_setState_createFeatures('your_closed_guard_raw_data', 'your_closed_guard')
    #4 Your back control
    ybc_td = combine_setState_createFeatures('your_back_control_raw_data', 'your_back_control')
    #5 Opponent mount or opponent side control
    omountsc_td = combine_setState_createFeatures('opponent_mount_and_opponent_side_control_raw_data', 'opponent_mount_or_sc')
    #6 Opponent closed guard
    ocg_td = combine_setState_createFeatures('opponent_closed_guard_raw_data', 'opponent_closed_guard')
    #7 Opponent back control
    obc_td = combine_setState_createFeatures('opponent_back_control_raw_data', 'opponent_back_control')
    #8 "Non jiu-jitsu" motion
    nonjj_td = combine_setState_createFeatures('non_jj_raw_data', 'non_jj')

    training_data = concat_data([ymount_td, ysc_td, ycg_td, ybc_td, omountsc_td, ocg_td, obc_td, nonjj_td])
    # remove NaN
    training_data = blank_filter(training_data)
    return training_data