MATLAB小函数:找出矩阵中某一列(行)元素全相等的列(行)所在下标及对应元素值
给定一个矩阵,一列一列找,如果某一列中全部元素都是相同的值,则返回该列的id号。例如:aa矩阵中第2列元素值全是2.3,第5列元素值全是7,则返回列下标值2, 5与相应的元素值2.3, 7。
aa =
5.0000 2.3000 4.0000 8.0000 7.0000
6.0000 2.3000 4.0000 6.0000 7.0000
8.0000 2.3000 1.0000 4.0000 7.0000
8.0000 2.3000 6.0000 4.0000 7.0000
1.0000 2.3000 5.0000 9.0000 7.0000
0 2.3000 1.0000 5.0000 7.0000
3.5000 2.3000 6.4000 8.6000 7.0000
output =
2.0000 2.3000
5.0000 7.0000
1. MATLAB程序
function output=Column_consistent(data)
% MATLAB 找出矩阵中某一列元素全相等的列所在的下标及对应的元素值
% Input: 数据集
% Output:列下标号 元素值
[~, dim]=size(data);
index=[];
value_col=[];
for i=1:dim
result_frequency=tabulate(data(:, i));
value=result_frequency(result_frequen