Я хочу применить выбор объектов к набору данных (lung.mat). После загрузки данных я вычислил среднее расстояние между каждым объектом с другими по методу Жакара.Затем я отсортировал расстояния по убыванию в B1.И тогда я выбрал для примера 25 число всех функций и сохранил матрицу в базе данных1.Я хочу выбрать объекты, значения расстояний которых превышают среднее значение массива (B1).
close all;
clc
load lung.mat
data=lung;
[n,m]=size(data);
for i=1:m-1
for j=i+1:m
t1(i,j)=fjaccard(data(:,i),data(:,j));
b1=sum(t1)/(m-1);
end
end
[B1,indB1]=sort(b1,'descend');
databs1=data(:,indB1(1:25));
databs1=[databs1,data(:,m)]; %jaccard
save('databs1.mat');
Буду благодарен за ваше мнение о том, как определить это в B1, при выборе значенийB1, которые больше, чем среднее значение массива B1. Это означает обрезку остальных меньших значений, чем среднее значение B1.Я использовал эту строку,
B1(B1>mean(B1(:)))
после запуска, B1 по-прежнему имеет полное число объектов (столбец), равное полному набору данных, например, lung.mat имеет 57 объектов, а B1 по этой строке по-прежнему имеетВ 57 столбцах я посчитал, что по этой строке B1 будет обрезано до количества признаков, которые превышают среднее значение B1.