#Projectome_finder This project includes different notebooks which all were combine to "Notebook_combined" and two different datasets: artifact data and robins data
combined_NB_31.01.ipynb
-Load data (muscles) and simulation (roots)
-plot recruitment curves
-process recruitment
- Heatmap
- Sigmoid fit
-Evaluate: combine roots and muscles
- Combine activation pattern (muscles, roots)
- Compare projectome (from paper) with generated
- Plot Heatmap (Spinalcord, projectome)
-Evaluate: combine roots and muscles
Notebook_6_Notebook_6_Loading_Mat_from_RD
-Load the data from matlab format
-Restructure it to a class
-Save it as pickle file
Notebook_7_Create_tensor_filteredData
-Creates a 5D tensor with filtered data "filtered_data_to_tensor"
Dim 0: all electrodes, (0 to 15)
Dim 1: all muscles (0 to 13)
Dim 2: all amplitudes (0 to 40)
Dim 3: all repeats (0 to 39) (since trials are repeated with the same amplitude, max 40x)
Dim 4: EMG Raw (time array of 1404 EMG values)
size of tensor: torch.Size([16, 16, 40, 39, 1000])
-Creates a 5D tensor with peak to peak value per trial "peak2peak_data_to_tensor"
Dim 0: all electrodes, (0 to 15)
Dim 1: all muscles (0 to 13)
Dim 2: all amplitudes (0 to 40)
Dim 3: all repeats (0 to 39)
Dim 4: peak to peak value (1 value)
size of tensor: torch.Size([16, 16, 40, 39, 1])
-Creates a 3D tensor: "amplitude_filtereddata_to_tensor"
Dim 0: all electrodes, (0 to 15)
Dim 1: all muscles (0 to 13)
Dim 2: all amplitudes (40 amplitude values starting from 0.2 to 4.9, if for specific combination no EMG data for specific amplitude, space filled with "nan")
Notebook_8_Analysis
-Plot Filtered EMG
-EMG Processing: plot peak to peak values = recruitment curves
-Muscle recruitment processing
-A: Heat map
-Normalisation of data
-build heat map ( with and without interpolation)
-plot heatmap
-B: Fit recruitment to sigmoids
-with max value set by data
-with interpolated max value (higher than data)
Notebook_9_Loading_Neuron_Sim_Results -Load the simulations -Restructure it to a df -Save it as pickle file
Notebook_10_Load_roots_simulation -Plot the roots recruitment curve -build and plot the heat map -build and plot the sigmoid curve
Notebook_x_Cleaning_data
This notebook is put on hold for now, since we don't focus on artifact removal anymore
-Section D: For each artifact:
-load the data
-create an artefact-free series (new attribute of object)
-save the data
-Notebook_1__Load_data_transform_object
-Section A: Load the data from the original data
-Section B: Define a way so that it is simple to:
-save part or all the data
-load part or all the data
Notebook_2_Building_artifact_library
-Section C: Building the library of artifacts
-load data
-find artifacts
-save artifacts
Notebook_3_Making_tensor
-Creates a 5D tensor: "raw_data_to_tensor"
Dim 0: all electrodes, (0 to 15)
Dim 1: all muscles (0 to 13)
Dim 2: all amplitudes (0 to 32)
Dim 3: all repeats (0 to 11) (since trials are repeated with the same amplitude, max 11x)
Dim 4: EMG Raw (time array of 1404 EMG values)
size of tensor: torch.Size([16, 14, 32, 11, 1404])
-Creates a 3D tensor: "amplitude_data_to_tensor"
Dim 0: all electrodes, (0 to 15)
Dim 1: all muscles (0 to 13)
Dim 2: all amplitudes (32 amplitude values starting from 0.5 to 3.7, if for specific combination no EMG data for specific amplitude, space filled with "nan")
-df_muscles: list of muscles with indices
-df_elecs: list of electrodes with indices
All data is saved as pickle file /csv file
Notebook_4_Plot_tensor
-plots max, min and middle amplitude of an elec-muscle combination
Notebook_5_Peak_to_peak_analysis
-get muscle number from name
-get data tensor from muscle name
-get amplitude tensor from muscle name
-get max EMG for normalisation
-get peak to peak value
-get histogram
-analysing data by plotting histograms