Debugging EDA signal - preliminary step for imputation.
parent
9ea39dc557
commit
212cf300f8
|
@ -484,7 +484,7 @@ EMPATICA_ACCELEROMETER:
|
|||
FEATURES: ["maxmagnitude", "minmagnitude", "avgmagnitude", "medianmagnitude", "stdmagnitude"]
|
||||
SRC_SCRIPT: src/features/empatica_accelerometer/dbdp/main.py
|
||||
CR:
|
||||
COMPUTE: True
|
||||
COMPUTE: False
|
||||
FEATURES: ["totalMagnitudeBand", "absoluteMeanBand", "varianceBand"] # Acc features
|
||||
WINDOWS:
|
||||
COMPUTE: True
|
||||
|
@ -512,7 +512,7 @@ EMPATICA_TEMPERATURE:
|
|||
FEATURES: ["maxtemp", "mintemp", "avgtemp", "mediantemp", "modetemp", "stdtemp", "diffmaxmodetemp", "diffminmodetemp", "entropytemp"]
|
||||
SRC_SCRIPT: src/features/empatica_temperature/dbdp/main.py
|
||||
CR:
|
||||
COMPUTE: True
|
||||
COMPUTE: False
|
||||
FEATURES: ["maximum", "minimum", "meanAbsChange", "longestStrikeAboveMean", "longestStrikeBelowMean",
|
||||
"stdDev", "median", "meanChange", "sumSquared", "squareSumOfComponent", "sumOfSquareComponents"]
|
||||
WINDOWS:
|
||||
|
@ -553,7 +553,7 @@ EMPATICA_BLOOD_VOLUME_PULSE:
|
|||
FEATURES: ["maxbvp", "minbvp", "avgbvp", "medianbvp", "modebvp", "stdbvp", "diffmaxmodebvp", "diffminmodebvp", "entropybvp"]
|
||||
SRC_SCRIPT: src/features/empatica_blood_volume_pulse/dbdp/main.py
|
||||
CR:
|
||||
COMPUTE: True
|
||||
COMPUTE: False
|
||||
FEATURES: ['meanHr', 'ibi', 'sdnn', 'sdsd', 'rmssd', 'pnn20', 'pnn50', 'sd', 'sd2', 'sd1/sd2', 'numRR', # Time features
|
||||
'VLF', 'LF', 'LFnorm', 'HF', 'HFnorm', 'LF/HF', 'fullIntegral'] # Freq features
|
||||
WINDOWS:
|
||||
|
@ -572,7 +572,7 @@ EMPATICA_INTER_BEAT_INTERVAL:
|
|||
FEATURES: ["maxibi", "minibi", "avgibi", "medianibi", "modeibi", "stdibi", "diffmaxmodeibi", "diffminmodeibi", "entropyibi"]
|
||||
SRC_SCRIPT: src/features/empatica_inter_beat_interval/dbdp/main.py
|
||||
CR:
|
||||
COMPUTE: True
|
||||
COMPUTE: False
|
||||
FEATURES: ['meanHr', 'ibi', 'sdnn', 'sdsd', 'rmssd', 'pnn20', 'pnn50', 'sd', 'sd2', 'sd1/sd2', 'numRR', # Time features
|
||||
'VLF', 'LF', 'LFnorm', 'HF', 'HFnorm', 'LF/HF', 'fullIntegral'] # Freq features
|
||||
PATCH_WITH_BVP: True
|
||||
|
|
Binary file not shown.
After Width: | Height: | Size: 98 KiB |
Binary file not shown.
After Width: | Height: | Size: 98 KiB |
|
@ -38,8 +38,8 @@ def extract_second_order_features(intraday_features, so_features_names, prefix="
|
|||
so_features[prefix+"SO_numPeaksNonZero"] = intraday_features.groupby(groupby_cols)[prefix+"numPeaks"].apply(lambda x: (x!=0).sum())
|
||||
|
||||
# numWindowsNonZero specialized for BVP and IBI sensors
|
||||
if "hrv_num_windows_non_zero" in so_features_names and prefix+"meanHr" in intraday_features.columns:
|
||||
so_features[prefix+"SO_numWindowsNonZero"] = intraday_features.groupby(groupby_cols)[prefix+"meanHr"].apply(lambda x: (x!=0).sum())
|
||||
if "hrv_num_windows_non_nan" in so_features_names and prefix+"meanHr" in intraday_features.columns:
|
||||
so_features[prefix+"SO_numWindowsNonNaN"] = intraday_features.groupby(groupby_cols)[prefix+"meanHr"].apply(lambda x: (x!=0).sum())
|
||||
|
||||
so_features.reset_index(inplace=True)
|
||||
|
||||
|
|
|
@ -1,27 +1,50 @@
|
|||
import pandas as pd
|
||||
import seaborn as sns
|
||||
import matplotlib.pyplot as plt
|
||||
|
||||
from itertools import compress
|
||||
|
||||
# path = "/rapids/data/processed/features/all_participants/all_sensor_features.csv" # all features all participants
|
||||
# path = "/rapids/data/interim/p03/empatica_accelerometer_features/empatica_accelerometer_python_cr_windows.csv"
|
||||
path = "/rapids/data/interim/p031/empatica_electrodermal_activity_features/empatica_electrodermal_activity_python_cr_windows.csv"
|
||||
path = "/rapids/data/interim/p01/empatica_electrodermal_activity_features/empatica_electrodermal_activity_python_cr_windows.csv"
|
||||
# path = "/rapids/data/interim/p02/empatica_inter_beat_interval_features/empatica_inter_beat_interval_python_cr_windows.csv"
|
||||
# path = "/rapids/data/interim/p02/empatica_blood_volume_pulse_features/empatica_blood_volume_pulse_python_cr_windows.csv"
|
||||
# path = "/rapids/data/interim/p02/empatica_temperature_features/empatica_temperature_python_cr_windows.csv"
|
||||
|
||||
df = pd.read_csv(path)
|
||||
print(df)
|
||||
is_NaN = df.isnull()
|
||||
df = df[df["empatica_electrodermal_activity_cr_numPeaks"]]
|
||||
print(df)
|
||||
df_num_peaks_zero = df[df["empatica_electrodermal_activity_cr_numPeaks"] == 0]
|
||||
columns_num_peaks_zero = df_num_peaks_zero.columns[df_num_peaks_zero.isna().any()].tolist()
|
||||
|
||||
df_num_peaks_non_zero_t = df[df["empatica_electrodermal_activity_cr_numPeaks"] != 0]
|
||||
df_num_peaks_non_zero = df_num_peaks_non_zero_t[columns_num_peaks_zero]
|
||||
|
||||
|
||||
# row_has_NaN = is_NaN. any(axis=1)
|
||||
# rows_with_NaN = df[row_has_NaN]
|
||||
# print(rows_with_NaN.size)
|
||||
pd.set_option('display.max_columns', None)
|
||||
# # pd.set_option('display.max_rows', None)
|
||||
# print(df_num_peaks_non_zero)
|
||||
df_q = pd.DataFrame()
|
||||
for col in df_num_peaks_non_zero:
|
||||
df_q[col] = pd.to_numeric(pd.cut(df_num_peaks_non_zero[col], bins=[-1,0,0.000000000001,1000], labels=[-1,0,1], right=False))
|
||||
|
||||
# sns.heatmap(df.isna(), cbar=False)
|
||||
plt.savefig('eda_windows_p03_window_60_thresh_default.png', bbox_inches='tight')
|
||||
sns.heatmap(df_q)
|
||||
plt.savefig('eda_windows_p01_window_non_zero.png', bbox_inches='tight')
|
||||
plt.close()
|
||||
|
||||
# Filter columns that do not contain 0
|
||||
non_zero_cols = list(compress(columns_num_peaks_zero, df_num_peaks_non_zero.all().tolist()))
|
||||
zero_cols = list(set(columns_num_peaks_zero) - set(non_zero_cols))
|
||||
|
||||
print(non_zero_cols, "\n")
|
||||
print(zero_cols)
|
||||
|
||||
# maxPeakAmplitudeChangeBefore
|
||||
|
||||
mpacb = df_num_peaks_non_zero_t\
|
||||
[(df_num_peaks_non_zero_t['empatica_electrodermal_activity_cr_avgPeakAmplitudeChangeBefore'] != 0) \
|
||||
& (df_num_peaks_non_zero_t['empatica_electrodermal_activity_cr_numPeaks'] != 0)]
|
||||
print(mpacb['empatica_electrodermal_activity_cr_numPeaks'])
|
||||
sns.heatmap(mpacb['empatica_electrodermal_activity_cr_numPeaks'])
|
||||
plt.savefig('maxPeakAmplitudeChangeBefore.png', bbox_inches='tight')
|
||||
|
||||
|
|
Loading…
Reference in New Issue