Skip to content

← file_system package

RecordToCSV

Record data into a csv file.

This node accepts a multi-channel time series and writes it to a csv (comma-separated values) file. The result can be read with numerous analysis packages, including Excel, MATLAB(tm), and SPSS(tm). This note continuously appends data to a file as it receives it and therefore is useful with online/streaming pipelines (as opposed to ExportCSV). This node will interpret your data as a multi-channel time series, even if it is not: if your packets have additional axes, like frequency, feature, and so on, these will be automatically vectorized into a flat list of channels. Also, if you send data with multiple instances (segments) into this node, subsequent instances will be concatenated along time, so the data written to the file will appear contiguous and non-segmented (channels by samples). The way the file is laid out is as one row per sample, where the values of a sample, which are the channels, are separated by commas. Optionally this node can write the names of each channel into the first row (as a header, which is supported by some software), and it can also optionally append the time-stamp of each sample as an additional column at the end of each row. This node is designed for writing streaming data to disk, chunk by chunk. For saving an entire file to disk as CSV (when working with "offline" data), use ExportCSV instead. Version 1.0.1

Ports/Properties

data

Input signal.

  • verbose name: Data
  • default value: None
  • port type: DataPort
  • value type: Packet (can be None)
  • data direction: IN

filename

Filename to record data to. Can be the full path or a relative path or filename if `output_root is specified.

  • verbose name: Filename
  • default value: untitled.csv
  • port type: StringPort
  • value type: str (can be None)

output_root

Path to the output folder; if specified, the filename will be relative to this folder. Alternatively, this can be left empty and the full path may be specified in filename).

  • verbose name: Output Root
  • default value:
  • port type: StringPort
  • value type: str (can be None)

column_header

Include channel labels as columns headers. If this is set, the first row in the file will have the channel names. Some analysis programs can interpret this as the header row of the table (basically as column labels).

  • verbose name: Include Column Labels
  • default value: True
  • port type: BoolPort
  • value type: bool (can be None)

time_stamps

Append a column for timestamps. If set, an extra column of data will be appended (i.e., one extra value at the end of each row, which holds the time-stamp for the respective sample, if any).

  • verbose name: Time Stamps
  • default value: True
  • port type: BoolPort
  • value type: bool (can be None)

absolute_instance_times

Write absolute instance times. If disabled, the time axis for each instance will be relative to the time-locking event.

  • verbose name: Absolute Instance Times
  • default value: True
  • port type: BoolPort
  • value type: bool (can be None)

timestamp_label

Label for the time-stamp column (if included).

  • verbose name: Timestamp Label
  • default value: timestamp
  • port type: StringPort
  • value type: str (can be None)

retrievable

Upload Parts so they can be retrieved individually.

  • verbose name: Retrievable Parts
  • default value: False
  • port type: BoolPort
  • value type: bool (can be None)

delete_parts

Delete parts after all data is recorded and uploaded. Only applicable is Retrievable parts is set to True.

  • verbose name: Delete Parts After Completion
  • default value: True
  • port type: BoolPort
  • value type: bool (can be None)

set_breakpoint

Set a breakpoint on this node. If this is enabled, your debugger (if one is attached) will trigger a breakpoint.

  • verbose name: Set Breakpoint (Debug Only)
  • default value: False
  • port type: BoolPort
  • value type: bool (can be None)

metadata

User-definable meta-data associated with the node. Usually reserved for technical purposes.

  • verbose name: Metadata
  • default value: {}
  • port type: DictPort
  • value type: dict (can be None)

cloud_host

Cloud storage host to use (if any). You can override this option to select from what kind of cloud storage service data should be downloaded. On some environments (e.g., on NeuroScale), the value Default will be map to the default storage provider on that environment.

  • verbose name: Cloud Host
  • default value: Default
  • port type: EnumPort
  • value type: str (can be None)

cloud_account

Cloud account name on storage provider (use default if omitted). You can override this to choose a non-default account name for some storage provider (e.g., Azure or S3.). On some environments (e.g., on NeuroScale), this value will be default-initialized to your account.

  • verbose name: Cloud Account
  • default value:
  • port type: StringPort
  • value type: str (can be None)

cloud_bucket

Cloud bucket to read from (use default if omitted). This is the bucket or container on the cloud storage provider that the file would be written to. On some environments (e.g., on NeuroScale), this value will be default-initialized to a bucket that has been created for you.

  • verbose name: Cloud Bucket
  • default value:
  • port type: StringPort
  • value type: str (can be None)

cloud_credentials

Secure credential to access cloud data (use default if omitted). These are the security credentials (e.g., password or access token) for the the cloud storage provider. On some environments (e.g., on NeuroScale), this value will be default-initialized to the right credentials for you.

  • verbose name: Cloud Credentials
  • default value:
  • port type: StringPort
  • value type: str (can be None)