inspect3d:tutorials:clean_your_data
Differences
This shows you the differences between two versions of the page.
Both sides previous revisionPrevious revisionNext revision | Previous revision | ||
inspect3d:tutorials:clean_your_data [2024/06/19 12:45] – sgranger | inspect3d:tutorials:clean_your_data [2024/07/12 13:26] (current) – removed sgranger | ||
---|---|---|---|
Line 1: | Line 1: | ||
- | {{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{this tutorial will show you how to use inspect3d as a data cleaning, or quality assurance, tool. you will learn how to check for and correct faulty force assignments from all files at once, thereby removing any artifacts from the data. this is particularly useful for lab managers (or supervisors) who may not be familiar with the raw data, or collaborators that were not involved in the collection process. | ||
- | ===== data ===== | ||
- | |||
- | this tutorial uses overground walking data from four subjects. the subjects walked at three different speeds; slow, normal and fast. the data was analyzed using a pipeline which included an automatic gait event detection command. [[visual3d: | ||
- | |||
- | these data files can be downloaded using this link: [[https:// | ||
- | |||
- | ===== loading the library ===== | ||
- | |||
- | inspect3d_four_subjects_loaded.png | ||
- | |||
- | 1. click i3dloadlibrary.png **load library** in the [[inspect3d: | ||
- | |||
- | 2. click **browse** and select the folder where the cmz files are stored. | ||
- | |||
- | 3. click **load** button to import the data. | ||
- | |||
- | this step selects the path to the data you are using. if you intend to modify the data, e.g., by correcting invalid assignments, | ||
- | |||
- | note: after the library path is set, files from the selected folder and sub-folders will be loaded and parsed. inspect3d will show a summary of the loaded files and what they contain in the load library dialog. examine this summary to make sure that the correct files have loaded. | ||
- | |||
- | |||
- | ===== defining queries and calculating groups ===== | ||
- | |||
- | 1. click on the i3dgroups.png **query definitions** icon on the [[inspect3d: | ||
- | |||
- | 2. to create a new query definition, click the actionadd48x48.png green addition button in the empty **queries** list. | ||
- | |||
- | 2.1. type grf in the **query name** text box in top-right and click **save**. | ||
- | |||
- | inspect3d_creating_query_(four_subjects_walking).png | ||
- | |||
- | 3. while the grf query is selected, click the actionadd48x48.png green addition button in the empty **conditions** list. | ||
- | |||
- | 3.1. type r_grf in the **condition name** text box in the top-right. | ||
- | |||
- | 3.2. there are now three tabs that need to be completed in order to define the sub-group. | ||
- | |||
- | 3.2.1. **signals**: | ||
- | |||
- | inspect3d_signal_tab_(four_subjects_walking).png | ||
- | |||
- | 3.2.2. **events**: this tab allows the user to specify the desired event sequence to extract data from. for instance, the right gait cycle could be extracted using the event sequences ron, roff or rhs, rhs. for this tutorial select the ron and roff events and leave the default normalization values of 101 for the number of points and cubic for the spline type. | ||
- | |||
- | inspect3d_events_tab_(four_subjects_walking).png | ||
- | |||
- | 3.2.3. **refinements**: | ||
- | |||
- | inspect3d_refinement_tab_(four_subjects_walking).png | ||
- | |||
- | 3.3. click **save** to create the condition. | ||
- | |||
- | 4. for this tutorial, define a second condition within the same group to account for the left side. this can be done by modifying the existing sub-group: | ||
- | |||
- | 4.1. while the grf group is selected, click the actionadd48x48.png green addition button in the **sub-groups** list and type l_grf in the **sub-group name** text box. | ||
- | |||
- | 4.1.1. in the signals tab, change the name to l_grf and leave the other parameters as they are. | ||
- | |||
- | 4.1.2. in the events tab, select the event sequence lon and loff. | ||
- | |||
- | 4.1.3. leave the refinements tab as it was. | ||
- | |||
- | 4.2. click **save** to create this second condition. | ||
- | |||
- | inspect3d_two_conditions_(four_subjects_walking).png | ||
- | |||
- | you should now see one query (grf) in the **queries** list and two conditions (r_grf and l_grf) in the **conditions** list. at this point in the tutorial these definitions have been created but they have not been applied to the signals in the loaded library. to do this, click on **calculate all queries** (or **calculate selected queries**, since there is only one group in this tutorial). | ||
- | |||
- | once the group is calculated you can close the query builder dialog, it is now time to examine the results visually by plotting them. | ||
- | |||
- | |||
- | ===== visualizing and exploring your data ===== | ||
- | |||
- | 1. with the groups calculated, the specific traces that have been extracted from the loaded library' | ||
- | |||
- | inspect3d_visualizing_four_subjects_walking.png | ||
- | |||
- | |||
- | 2. select all of the workspaces either by using the **select all workspaces** check box or by selecting them all in the **workspaces** list. then ensure that the **plot all sequences** check box is checked and click **refresh plot**. | ||
- | |||
- | |||
- | 3. when inspect3d tries to plot [[inspect3d: | ||
- | |||
- | 3.1. update your plot by clicking **refresh plot**; it should now resemble the graph below. | ||
- | |||
- | inspect3d_queried_data_(four_subjects_walking).png | ||
- | |||
- | |||
- | 4. use your cursor to select only lines on the graph that you wish to inspect. click on single traces in order to examine individual curves without the other curves ' | ||
- | |||
- | inspect3d_select_trace_(four_subjects_walking).png | ||
- | |||
- | |||
- | ===== verifying raw data and excluding traces ===== | ||
- | |||
- | once the queried traces have been plotted, it is now possible to begin cleaning the data. in this example, in particular, it is evident that some incorrect forces assignments exist. | ||
- | |||
- | 1. in order to exclude these incorrect assignments, | ||
- | |||
- | 2. right-click and navigate to exclude, at the very bottom, and click exclude trace (raw data). | ||
- | |||
- | |||
- | 3. verify that your desired traces have been properly excluded. | ||
- | |||
- | 3.1 when traces are excluded, two notable differences should appear in the queried data subwindow. first, the previously selected, but now excluded data should not be visible on the graph. second, the **workspaces** widget will indicate when traces have been excluded. specifically, | ||
- | |||
- | inspect3d_excluded_traces_(four_subjects_walking).png | ||
- | |||
- | 4. if you want to visualize the data you have excluded alongside the remaining data, go to the [[inspect3d: | ||
- | |||
- | inspect3d_excluded_traces_shown_(four_subjects_walking).png | ||
- | |||
- | |||
- | 5. | ||
- | inspect3d_animate_trace_(four_subjects_walking).png | ||
- | |||
- | traces can also be examined more closely before deciding to include or exclude them. | ||
- | 5.1 select the traces of interest by clicking and dragging on the plot. | ||
- | |||
- | 5.2 click the i3dshowanimation.png **show animation** button. | ||
- | |||
- | 5.3 the show animation dialog can display animations for those selected traces with enough data in the .cmz file to permit a recreation. each of the selected traces can be selected from the drop-down box near the top of the dialog. this view can be used to determine what (if any) issue exists in the data and whether this merits exclusions. excluded traces are removed from the drop-down box within the dialog as well as the queried data subwindow. | ||
- | |||
- | 6. once all of the desired exclusions have been made, the original data is ready to be updated. | ||
- | |||
- | |||
- | ===== updating the original data ===== | ||
- | |||
- | 1. | ||
- | inspect3d_update_cmz_(four_subjects_walking).png | ||
- | |||
- | now that the incorrect force assignments have been identified in our data set, it is possible to update the original [[visual3d: | ||
- | 2. the **excluded traces** options allow the user to add a bad event to the excluded traces. this option is helpful if the intention is to [[visual3d: | ||
- | |||
- | 3. alternatively, | ||
- | |||
- | 4. select both **add event to exclude signals** with the default event name " | ||
- | |||
- | 5. this results in inspect3d opening each .cmz file in the background, adding a bad event for the excluded traces, and removing the force assignments. this process can take some time depending on the .cmz size, but you can further explore your data (or get a coffee) as it is occurs. when the update is complete, the check mark icons will return beside each workspace in the **workspaces** widget and the original data will be modified. | ||
- | |||
- | |||
- | ===== recap ===== | ||
- | |||
- | in this tutorial you learned how to use inspect3d as a data cleaning tool for quality assurance purposes. here, the process of loading data, defining queries, excluding data, and updating the original data are described. | ||
- | |||
- | ===== navigate tutorials ===== | ||
- | |||
- | previous: [[inspect3d: | ||
- | |||
- | **inspect3d getting started tutorials** | ||
- | |||
- | next: [[inspect3d: | ||
- | |||
- | |||
- | }}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}} |
inspect3d/tutorials/clean_your_data.1718801109.txt.gz · Last modified: 2024/06/19 12:45 by sgranger