Input combination of string and number to a function which only accepts numbers?

2 visualizzazioni (ultimi 30 giorni)
I am using EEGLAB on Matlab and would like to cut sections of the EEG between blocks. In EEGLAB the function is pop_select which accepts numbers separated by semicolon, e.g. [0 100; 120 150; 160 170], to select e.g. the period from 0 to 100 ms, etc.
I would like to create this input as an array, input_array, which is fed directly to the function, e.g. pop_select( EEG, 'notime', input_array), since I don't know beforehand which time periods I want to select.
However, the input must be separated by semicolon, which means that input_array contains strings and cannot be converted to a number array. Is there a way to overcome this?
  2 Commenti
Rik
Rik il 15 Lug 2021
How exactly does that mean input_array contains strings?
I only see a 3x2 numeric array.
[0 100; 120 150; 160 170]
ans = 3×2
0 100 120 150 160 170
Martin Randau
Martin Randau il 15 Lug 2021
When constructing the array I need to insert the semicolon as a string. The function pop_select will not accept the input without semicolon separating the time intervals. So ";" is a string, so is "[" and "]" which I have to put at the end and start of the input, respectively.

Accedi per commentare.

Risposta accettata

Cris LaPierre
Cris LaPierre il 15 Lug 2021
MATLAB uses semicolons to construct arrays. A semicolon represents the end of a row. Anything following it is placed on the next row.
You can learn more about this in Ch 4 of MATLAB Onramp.
  9 Commenti
Cris LaPierre
Cris LaPierre il 15 Lug 2021
Incidentally, that produces exactly the same result as this code I shared earlier:
input_array = [EEG.xmin boundaryEnd_sec(2:end); boundaryStart_sec(2:end) EEG.xmax]';
EEG = pop_select( EEG, 'notime', input_array)

Accedi per commentare.

Più risposte (0)

Categorie

Scopri di più su EEG/MEG/ECoG in Help Center e File Exchange

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!

Translated by