Welcome
Guest
, you are in:
<root>
Elements
•
Login
EventIDE Wiki
Navigation
¶
Main Page
Random Page
Create a new Page
All Pages
Categories
Navigation Paths
Administration
File Management
Create Account
Search the wiki
Back
Reporter Element
Modified on 2018/08/03 00:31
by
Administrator
Categorized as
Base Elements
,
Data Collection
<div style="margin-right: 10px; margin-left: 16px; margin-bottom:10px; float: right; width: 500px; overflow: hidden; height: auto; padding: 0px; background: #fafafa; background: -webkit-gradient(linear, left top, left bottom, from(#fbfbfb), to(#fafafa));background: -moz-linear-gradient(top, #fbfbfb, #fafafa);border: 1px dashed #ddd;box-shadow: 0 0 0 3px #fff, 0 0 0 5px #ddd, 0 0 0 10px #fff, 0 0 2px 10px #eee;"> == Summary == {s:Element Info Panel | title=Reporter | category=Data collection | icon=[image|Element Icon|{UP(Reporter-Element)}Reporter-Element-Icon.png] | author= OkazoLab | addin= Base Layer | scope= Parent event | usage= Snippets | ownsnippets= None } == Properties == {| |- ! Name ! Description ! Constraints ! Type ! On<br/>runtime<br/>change |- | colspan="5" bgcolor="#AADDDDD" | Settings |- | Recording Juncture | Defines a time juncture in the parent event, in which the element records selected variables into Data Report. | {s:atDesign} | enRepo.. | |- | Open Data Designer | Opens a visual designer for data collection | {s:atDesign} | Boolean | |- | colspan="5" bgcolor="#AADDDDD" | Runtime |- | Is Active | Defines whether Reporter is in a working state. Set this property to false in order to suspend data recording. | {s:atNormal} | Boolean | |- | colspan="5" bgcolor="#AADDDDD" | Control |- | Is Enabled | If set to false the element is completely omitted when the experiment is run | {s:atDesign} | Boolean | |- | Title | Title of the element | {s:atDesign} | String | |- |} == == </div> <!--*****************************************************************************************************************************************************************************--> <!--*****************************************************************************************************************************************************************************--> <!--*****************************************************************************************************************************************************************************--> <!--*****************************************************************************************************************************************************************************--> <!--*****************************************************************************************************************************************************************************--> <!--*****************************************************************************************************************************************************************************--> <!--*****************************************************************************************************************************************************************************--> <!--*****************************************************************************************************************************************************************************--> <!--*****************************************************************************************************************************************************************************--> <!--*****************************************************************************************************************************************************************************--> <!--*****************************************************************************************************************************************************************************--> <!--*****************************************************************************************************************************************************************************--> <!--*****************************************************************************************************************************************************************************--> <!--*****************************************************************************************************************************************************************************--> '''Reporter Element''' allows to automate data collection in EventIDE experiments. The element makes a snapshot of selected variables at certain moments and records the collected values into the Data Report (a default logging mechanism in EventIDE). Recorded values can be in tables and lists.<br> {TOC} == Description == EventIDE has a core mechanism for data collection called [Report|Data Report]. This mechanism is very flexible because you can always code what data will be recorded and when it occurred in the course of an experiment. The Reporter element is introduced in order to remove the need to write the data collection code in standard scenarios. The element provides a visual designer, where you can define a list of [global variables|global variables] and [proxy variables|Proxy Variables] for runtime recording. With the Reporter's designer you can also tune the variable order, formats and preview the expected results. Once an experiment is run, the Reporter element automatically collects values of the selected variables. Then the element builds a text block made of the collected values (it can be either a line or a list) and records the block into a data report. Every pass of data collection is initiated either on onset or on offset the parent event. This allows to implement repeated data savings, if the parent event is included in a trial loop. Multiple Reporter elements can be used elsewhere in an experiment, when different data have to be recorded separately. The element can also create a header row containing names of the recorded variables. The header is automatically placed at the top of the data report, before actual data collection starts. == Snapshots == {| | [imageleft|Visual designer of the Reporter element <br/>|{UP}/pictures/elements/reporter/ReporterDesignersm.png|{UP}/pictures/elements/Reporter/ReporterDesigner.png] |} == Practical Use == === Using Reporter for collecting trial data into a multi-line table === # Check the logic of your experiment to choose variables whose values you want to collect in each trial. # Add the Reporter element to the event in which you want to collect data. Typically, it is the last event in a trial loop. # Set the Recording Point property of Reporter. You can define there when data will be collected, either on onset or offset of the parent event. The default option is the event offset, because you may need to calculate a trial outcome, after onset of the last trial event but before trial data is recorded. # Open the Reporter data designer by clicking on the corresponding property. # Using a drop-down list on the left-top of the designer, select and add all variables whose values you want to record in each trial: [imageleft| Selection of variables <br/> in Reporter's data designer |{UP}/pictures/elements/reporter/sm_ReporterDesignerDropdown.png|{UP}/pictures/elements/Reporter/ReporterDesignerDropdown.png]<br><br><br><br><br><br><br><br><br><br><br><br><br> # In the Layout Option panel set the layout of variables to "in rows" and choose a character that will be used a column separator. # Check the report preview at the bottom of the designer. # Close the designer and run an experiment for several trial loops. # Open or export the resulting data report, and check how trial data is recorded. You should see data organized in a table, for example: @@ text Participant Code;Block Number;Trial Number;Target Position;Target Color;Target Shape;SOA Duration;Trial Result;Trial RT; Participant 01;1;1;180;Blue;1;100;True;881; Participant 01;1;2;180;Yellow;2;400;True;564; Participant 01;1;3;180;Blue;2;300;False;0; Participant 01;1;4;0;Blue;2;600;True;867; Participant 01;1;5;180;Red;2;200;True;760; @@ === Using Reporter for collecting data into a record list === # Repeat steps 1-5 from the previous technique, except for selection of the parent event. The record list is usually added once per run, at the start of the experiment. # Set the layout of variables to "in columns" in the Layout Option panel of Reporter's designer. If you do not want variables' names to be included in a record list, uncheck the 'Append variables's headers' option. # Set the layout of variables to "in columns" in the Layout Option panel of Reporter's designer. If you do not want variables' names to be included in a record list, uncheck the 'Append variables's headers' option. Otherwise, select a character that will separate variable's name and value in each row. # Check the report preview at the bottom of the designer # Close the designer and run an experiment for several trial loops. # Open or export the resulting data report, and check how trial data is recorded. You should see data organized in a list, for example: @@ csharp Participant Code;Participant 01; Condition; AA05; Key Map; 01; @@ == Element's internal actions aligned with epochs of the parent event == {| |- ! Epoche ! Actions |- | After onset | When the Recording Point property is '''On Onset''', Reporter saves variables' values into a data report |- | Before offset | When the Recording Point property is '''On Offset''', Reporter saves variables' values variables into a data report |} == Notes == * You can apply a format to a variable value, before it is recorded. To do so, add a [http://msdn.microsoft.com/en-us/library/dwhawy9k.aspx|.Net format string] to the third row of the variable table in Reporter's designer. For example, the format string '0.00' ensure that a recorded numerical values will have 2 digits in the fractional part. * You can use multiple Reporter elements in an experiment, but be aware of the order, in which they save data into a data report. * There is no need to use the Reporter element when you want to save some global experiment variables at the top of a data report. Instead, you can used the [startup info] variables. * While using the Reporter element, you still can write arbitrary data into a data report manually, via [code snippets]. * You can temporally suspend data collection done by the Reporter element. To do it, set the 'Is Active' property to False at runtime.
Meta Keywords:
Meta Description:
Change Comment:
ScrewTurn Wiki
version 5.2.0.8. Some of the icons created by
FamFamFam
.