我是Matlab的新手,这似乎超出了我的范围。感谢您的帮助,并提前致谢。
如果你能指出我正确的方向,我将不胜感激。
提前致谢。
答案 0 :(得分:0)
使用nchoosek
获取所有列对:
pairs_columns = nchoosek(1:m, 2);
pairs = {};
for pair = 1:size(pairs_columns,1)
flag = your_correlation_test(data(:,pairs_columns(pair,1)), data(:,pairs_columns(pair,2)));
if flag
pairs{end+1,1} = data_header(pairs_columns(pair,1));
pairs{end,2} = data_header(pairs_columns(pair,2)); %// Note that you don't need end+1 anymore as the previous line will have already increased the number of rows in the vector
end
end
m
是您的列数
your_correlation_test
是您的测试函数,它返回一个布尔结果
data
是您的数据集(我假设您可以按列号索引?)
data_header
是一个占位符,用于根据列号从数据集中获取标题的正确方法。对不起,我对Matlab中的数据集不是很熟悉