У меня есть следующий набор данных:
const data = [
["opens", "opens", "opens"], //opens of stock prices
["closes", "closes", "closes"], //closes of stock prices
["highs", "highs", "highs"], //highs of stock prices
["lows", "lows", "lows"] //close of stock prices
];
У меня есть функция forEach
, которая вызывает другую функцию с входом res
.Я пытаюсь создать RollingInput для подачи в мою нейронную сеть.Прямо сейчас только одна свеча ввода для каждого выхода.Я хочу создать скользящий ввод для этого примера 5.
this.opens.forEach((x, index) => {
let res = data.reduce((acc, list, idx, arr) => {
if (idx >= list.length)
return acc;
return [...acc, ...arr.map(x => x[idx])];
}, []);
console.log(res);
this.function(res);
});
Как я могу убедиться, что, когда идет цикл forEach
, res
на самом деле является скользящим окном с самым новым массивом, являющимсяподали в последний раз?
Я ищу выход, подобный [opens[-5], closes[-5], highs[-5], low[-5],opens[-4], closes[-4], highs[-4], low[-4],opens[-3], closes[-3], highs[-3], low[-3], opens[-3], closes[-2], highs[-2], low[-2], opens[-2], opens, [-1], closes[-1], highs[-1], low[-1], opens[0], closes[0], highs[0], low[0]]
, тогда следующий выход должен начинаться с [0] и заканчиваться на [5]
, не уверенесли это правильный способ сделать это, а также не уверен, как бы я обрезал отрицательные значения, поскольку очевидно, что -5 не существует.