Как пройти через разное количество элементов в каждом цикле? - PullRequest
0 голосов
/ 17 мая 2019

У меня есть модель триномиального дерева с ценами на акции, как на картинке ниже.Я хочу написать цикл для цикла элементов в столбце.Я сплющил ненулевые элементы в одномерный массив дерева, чтобы позже я смог выполнить оптимизацию scipy.Но после того, как я сгладил данные, я потерял индекс столбца (временные шаги).Я только знаю, что 1-й элемент из столбца 1, 2–4 из столбца 2, 5–13 из столбца 3. Но для следующей процедуры оптимизации все еще требуется цикл за столбцом.

Как мне написать цикл подобным образом: в первом цикле проверьте 1-й элемент (1-й), второй цикл, следующие 3 элемента (со 2-го по 4-й), третий цикл: следующие 9 элементов (с 5-го по 13-й)

trinomial

1 Ответ

0 голосов
/ 17 мая 2019

Псевдокод будет выглядеть примерно так (при условии, что указанный выше массив называется v).

startIndex = 0
endIndex = 0
for i = 1 to len(v):
    v[i] // this is the i-th row in your screenshot above.
    v[i][startIndex:endIndex + 1] // slice v[i].

    // update start and end indices
    startIndex = endIndex + 1
    endIndex = endIndex + i * i
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...