我有一个数据集x
,它是4D两倍,尺寸为[3x16x3x300]。
维度是:状态,区域,模式和时间。
我想将其转换为时间序列,该时间序列应仅为regions
x time
。
我如何能够挑选出我需要的部分以获得时间序列?我曾考虑过重塑,但我不确定要使用什么值。
与我一起工作的人说她在维度和模式上取平均值,尽管我不太了解她的意思。 regions
x time
矩阵应为16x300,因为此后我将计算功能连通性,该连通性应为16乘16。
以下脚本:
fileName = sprintf('BOLD-G01_branch1.h5');
%% path2data = 'output file'
path2data = 'C:/Users/Aiskya/Desktop/test/1009A/';
x = (squeeze(hdf5read(fullfile(path2data,fileName),'/x')));
N=size(x,2);
reshape(squeeze(x)) % --> This is the part that I'm confused of
TSsim = x;
TSsim = TSsim(11:end,:);
答案 0 :(得分:0)
要对要去除的尺寸进行平均,请遵循以下食谱:
x = zeros(3,16,3,300); % fill in the actual data here
y = mean(x,1); % average over dimension 1, output is 1x16x3x300
y = mean(y,3); % average over dimension 3, output is 1x16x1x300
y = squeeze(y); % remove dimensions of size 1, output is 16x300
输出y
仅包含regions
和time
轴。每个点y(i,j)
是状态和模式x(:,i,:,j)
的平均值。