sys.path.insert(1, '../src/MyAIGuide/utilities') import pickle import matplotlib.pyplot as plt import numpy as np import pandas as pd from scipy import stats from dataFrameUtilities import check_if_zero_then_adjust_var_and_place_in_data, insert_data_to_tracker_mean_steps, subset_period, transformPain, predict_values from sklearn.preprocessing import MinMaxScaler # Getting data input = open("../data/preprocessed/preprocessedDataParticipant2.txt", "rb") data = pickle.load(input) input.close() data["kneepain"] = transformPain(data["kneepain"]) # Plotting results fig, axes = plt.subplots(nrows=6, ncols=1) # Steps cols = [ 'movessteps', 'cum_gain_walking', 'googlefitsteps', 'elevation_gain', 'oruxcumulatedelevationgain', 'kneepain' ] for idx, val in enumerate(cols): if val == 'oruxcumulatedelevationgain': data[val].plot(ax=axes[idx], color='green', marker='o', linestyle='dashed', markersize=2)
period6, data, "elevation_gain", "fitbitFloors", "tracker_mean_denivelation") [data, reg] = check_if_zero_then_adjust_var_and_place_in_data( period7, data, "elevation_gain", "fitbitFloors", "tracker_mean_denivelation") # Filling the "tracker_mean_denivelation" column for time before Participant1 started recording it data.loc[data.index < "2016-09-01", "tracker_mean_denivelation"] = np.mean( data.loc[data.index >= "2016-09-01"]["tracker_mean_denivelation"].tolist()) # Filling the "generalmood" column for time before Participant1 started recording it data.loc[data.index < "2016-11-07", "generalmood"] = np.mean( data.loc[data.index >= "2016-11-07"]["generalmood"].tolist()) # Transforming pain scale data["kneePain"] = transformPain(data["kneePain"]) data["handsAndFingerPain"] = transformPain(data["handsAndFingerPain"]) data["foreheadAndEyesPain"] = transformPain(data["foreheadAndEyesPain"]) data["forearmElbowPain"] = transformPain(data["forearmElbowPain"]) data["aroundEyesPain"] = transformPain(data["aroundEyesPain"]) data["shoulderNeckPain"] = transformPain(data["shoulderNeckPain"]) data["sick_tired"] = transformPain(data["sick_tired"]) data["painInOtherRegion"] = transformPain(data["painInOtherRegion"]) data["maxPainOtherThanKnee"] = data[[ "handsAndFingerPain", "foreheadAndEyesPain", "forearmElbowPain", "aroundEyesPain", "shoulderNeckPain", "sick_tired", "painInOtherRegion" ]].max(axis=1) # Selecting the time interval to look at the data data = subset_period(data, "2016-01-05", "2022-03-26")
data.loc[data.index >= "2016-11-07"]["generalmood"].tolist()) # Adjusting WhatPulse for missing data (0 values) period1 = ("2015-12-26", "2020-12-29") #("2015-12-26", "2020-02-01") data["whatPulseT_corrected"] = data["whatPulseT"] [data, reg] = check_if_zero_then_adjust_var_and_place_in_data( period1, data, "manicTimeDelta", "whatPulseT", "whatPulseT_corrected") # Adjusting ManicTime for missing data (0 values) period1 = ("2015-12-26", "2020-12-29") #("2015-12-26", "2020-02-01") data["manicTimeDelta_corrected"] = data["manicTimeDelta"] [data, reg] = check_if_zero_then_adjust_var_and_place_in_data( period1, data, "whatPulseT", "manicTimeDelta", "manicTimeDelta_corrected") # Pain in Various locations data["kneePain"] = transformPain(data["kneePain"]) a = data["handsAndFingerPain"].tolist() b = data["forearmElbowPain"].tolist() data["fingerHandArmPain"] = transformPain( np.array([max(a[i], b[i]) for i, val in enumerate(a)])) data["shoulderNeckPain"] = transformPain( data["shoulderNeckPain"]) # add this to the previous??? a = data["foreheadAndEyesPain"].tolist() b = data["aroundEyesPain"].tolist() data["foreheadEyesPain"] = transformPain( np.array([max(a[i], b[i]) for i, val in enumerate(a)])) data["sick_tired"] = transformPain(data["sick_tired"]) # Cycling data["cycling"] = data["roadBike"] + data["mountainBike"]