Обсуждение статьи "Работа с матрицами и векторами в MQL5" - страница 4

 
Aleksey Vyazmikin #:

Вот жеж, я не понимаю, матрица - двухмерный массив как бы - правда?

Я хочу в массиве таком найти максимальное значение в определенном столбце, иду смотреть инструкцию.

И как я должен понимать 3 и 4 цифры в координатах, когда должно быть только две???

И, как в итоге получить максимальное значение заданного столбца?

Справка написана по русски. Вы свою задачу сначала распишите по этапам, чтобы самому понимать. Зачем вы ищете индекс? Видно же, что для матрицы эта функция вернет вектор


Таким образом, вам нужно:

  1. взять столбец или строку матрицы
  2. найти максимальное значение в этой последовательности

Пройдите все примеры постепенно, чтобы понять как работать с матрицей. 

Манипуляции
Документация по MQL5: Методы матриц и векторов / Манипуляции
Документация по MQL5: Методы матриц и векторов / Манипуляции
  • www.mql5.com
Манипуляции - Методы матриц и векторов - Справочник MQL5 - Справочник по языку алгоритмического/автоматического трейдинга для MetaTrader 5
 
Valeriy Yastremskiy #:

Косяк / баг видимо))) Копипастнули не удачно.

Никто не читает, но готовы поддержать. Вроде я видел вас в ветке машинного обучения? Если так, то вы должны понимать написанное в статье.

 
Aleksey Vyazmikin #:
Как скопировать в вектор или массив конкретный столбец/строку матрицы?

Читать справку и статью, другого варианта нет.

 
Aleksey Vyazmikin #:

Суть - пишу код - заполняю матрицу - печатаю итоги матрицы - запускаю скрипт - комментирую заполнение матрицы - запускаю скрипт - принтуется матрица со старыми значениями.

Кеш? Не хотите кеш, инциализируйте явно значения

 
Rashid Umarov #:

Справка написана по русски. Вы свою задачу сначала распишите по этапам, чтобы самому понимать. Зачем вы ищете индекс? Видно же, что для матрицы эта функция вернет вектор


Таким образом, вам нужно:

  1. взять столбец или строку матрицы
  2. найти максимальное значение в этой последовательности

Пройдите все примеры постепенно, чтобы понять как работать с матрицей. 

Манипуляции

Вроде очевидно, что если я задаю вопросы, то инструкция написано не понятно, слова должны содержать смысл - читаем "Возвращает индекс максимального значения", а Вы пишите " для матрицы эта функция вернет вектор".

Правильно, мне нужно взять столбец или строку - а вот как это сделать я не могу понять по инструкции.

Читаем:

Col

Возвращает вектор-столбец. Записывает вектор в указанный столбец


Ну отлично, мне и нужно получить в вектор столбец из матрицы.

vectorf V_Stolb.Col(m_Quant,1);
'Col' is not a member of 'vectorf' type Primer_01.mq5   164     9
expression has no effect        Primer_01.mq5   164     1
1 errors, 1 warnings            2       2

Я хочу находить максимальное значение в столбце или строке матрицы, а не во всей матрице.
Документация по MQL5: Методы матриц и векторов / Манипуляции / Col
Документация по MQL5: Методы матриц и векторов / Манипуляции / Col
  • www.mql5.com
Col - Манипуляции - Методы матриц и векторов - Справочник MQL5 - Справочник по языку алгоритмического/автоматического трейдинга для MetaTrader 5
 
Rashid Umarov #:

Кеш? Не хотите кеш, инциализируйте явно значения

Понял, буду инициализировать значениями...

 
Тут либо всем понятно, и ни у кого нет вопросов, и я совсем слабоумный, либо люди ждут больше примеров, и тогда ответ на мои глупые вопросы развивает людей.
 
Aleksey Vyazmikin #:

Col

Возвращает вектор-столбец. Записывает вектор в указанный столбец


Ну отлично, мне и нужно получить в вектор столбец из матрицы.


Я хочу находить максимальное значение в столбце или строке матрицы, а не во всей матрице.

Зачем же вы пытаетесь получить вектор из вектора. Эти методы предназначены для получения или вставки вектора в матрицу. И компилятор вам говорит об этом


 
Rashid Umarov #:

Зачем же вы пытаетесь получить вектор из вектора. Эти методы предназначены для получения или вставки вектора в матрицу. И компилятор вам говорит об этом


Это не вектор, а матрица, выше у меня код

   matrixf m_Quant;//Матрица с квантовой таблицей
   m_Quant.Init(Strok_Total_Quant*2, 1);//Инициализировали матрицу
   vectorf V_Quant;//Вектор для передачи массива в матрицу
   V_Quant.Assign(arr_Quant);//Скопировали массив в вектор
//Print("data after Assign", m_Quant);
   m_Quant.Col(V_Quant,0);//Скопировали вектор в матрицу
   m_Quant.Reshape(Strok_Total_Quant, 2);//Имзенили пропорцию матрицы вместе с данными
 
Так как вытащить столбец из матрицы?