Azzera filtri
Azzera filtri

How can I assign values to my whole cell array? I am getting [], but am unsure as to why.

2 visualizzazioni (ultimi 30 giorni)
I want my code to assign epochs (in 'a' datapoint intervals) into a cell array. In this case 'a' is 200. Total recording length is 587 epochs. 'k' is my patient number. Therefore, in this use case I should have a cell array with 46x587 cells, where each cell contains a 21x200 double. My code can be seen below:
for k = 1:46
for i = 1:b
NC_x{k, i} = NC_patient{k}(:,a*(i-1)+1:a);
end
end
Unfortunately, only the first column of my cell array is assigned the 21x200 doubles. Why is this, and how can I resolve it?
I look forward to receiving a response.
Kindest regards,
Sean
  2 Commenti
the cyclist
the cyclist il 24 Feb 2022
It's a bit difficult to know what the problem is. You don't mention what the value of b is. Could it be 1, and therefore you are only operating on the first column, in the loop over i?
Can you upload the data in a MAT file, so we can run your code?
Sean Goulding
Sean Goulding il 24 Feb 2022
Assume b is greater than 1. In this instance it is 587. The code is pretty long, this is just one section of it. I was just wondering if there was any obvious reason why variables past the first column aren't being assigned cells.

Accedi per commentare.

Risposta accettata

Walter Roberson
Walter Roberson il 24 Feb 2022
for k = 1:46
for i = 1:b
NC_x{k, i} = NC_patient{k}(:,a*(i-1)+1:a*i);
end
end

Più risposte (0)

Prodotti


Release

R2019a

Community Treasure Hunt

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

Start Hunting!

Translated by