Welcome Guest, you are in: Login

EventIDE Wiki

RSSRSS

Navigation




Search the wiki


PoweredBy

Page History: Reporter Element

Compare Page Revisions



« Older Revision - Back to Page History - Newer Revision »


Page Revision: 2013/08/08 17:17


Element Icon Reporter
Info
Category: Scenario Control AddIn: Base Elements
Creator: OkazoLab Team Scope: Parent Event
Owns Snippets: no Usage: Runtime Screen,Snippets
The Reporter element allows one to automate data collection in EventIDE experiments.


Description

EventIDE has a core mechanism for data collection called 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 and 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

Visual designer of the Reporter element

Visual designer of the Reporter element


Practical Use

Using Reporter for collecting trial data into a multi-line table

  1. Check the logic of your experiment to choose variables whose values you want to collect in each trial.
  2. Add the Reporter element to the event in which you want to collect data. Typically, it is the last event in a trial loop.
  3. 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.
  4. Open the Reporter data designer by clicking on the corresponding property.
  5. 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:
     Selection of variables  in Reporter's data designer

    Selection of variables
    in Reporter's data designer















  1. In the Layout Option panel set the layout of variables to "in rows" and choose a character that will be used a column separator.
  2. Check the report preview at the bottom of the designer.
  3. Close the designer and run an experiment for several trial loops.
  4. Open or export the resulting data report, and check how trial data is recorded. You should see data organized in a table, for example:
    
    
    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

  1. 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.
  2. 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.
  3. 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.
  4. Check the report preview at the bottom of the designer
  5. Close the designer and run an experiment for several trial loops.
  6. Open or export the resulting data report, and check how trial data is recorded. You should see data organized in a list, for example:
     
    
    Participant Code;Participant 01;
    Condition; AA05;
    Key Map; 01;


Element's internal actions aligned with epochs of the parent event

EpocheActions
After onsetWhen the Recording Point property is On Onset, Reporter saves variables' values into a data report
Before offsetWhen the Recording Point property is On Offset, Reporter saves variables' values variables into a data report

Synchronized Internal Actions

Experiment StartParent Event OnsetStatus change between Onset/OffsetParent Event OffsetExperiment End
Depending on the 'Recording Point' property, it may be onset of offset. Depending on the 'Recording Point' property, it may be onset of offset.

Notes

  • You can apply a format to a variable value, before it is recorded. To do so, add a .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.

Properties

Generic Properties

NameDescriptionConstraintsValue TypeUpon Runtime Change
Settings
Recording PointDefines a time point in the parent event, where the element records selected variables into Data Report.Option list
Data DesignerOpens a visual designer for data collection.
Runtime Control
Is ActiveDefines whether Reporter is in a working state. Set this property to false in order to suspend data recording.Boolean
+=== Properties inherited from clElement === Inherited properties of clElement
NameDescriptionConstraintsValue TypeUpon Change
Control
Is EnabledIf set to false the element is completely omitted when the experiment is run.Boolean
TitleTitle of the element.String

ScrewTurn Wiki version 5.2.0.8. Some of the icons created by FamFamFam.