Я пытаюсь написать программу с кластером класса, который имеет вектор вектора удвоений. Когда вы пытаетесь найти Centroid (средняя точка), я получаю сообщение об ошибке.Многомерный векторный индекс за пределами допустимого диапазона
Идея состоит в том, чтобы получить значение первой координаты, затем второй, третьей и т. Д. Из каждой координаты в массиве усредняйте их и вставьте их в объект централизованного объекта, а затем верните его.
код, чтобы найти центр тяжести находится ниже
vector<double> Cluster::getCentroid()
{
double temp;
for(int i=0; i<cluster[i].size();i++)
{
temp=0;
for(int j=0;j<cluster.size();j++)
{
temp+=cluster[j][i];
}
centroid.push_back(temp/cluster.size());
}
return centroid;
}
где медианы вектор, частный член класса кластеров.
Ошибка я получаю:
«выражение: индекс вне диапазона»
Я был бы признателен за любую обратную связь, или какие-либо предложения о том, что может быть причиной проблемы.
где медианы объявлена? –
В этой строке 'for (int i = 0; i