Преобразовать значение, используя значение из другой строки, с помощью команды petl? - PullRequest
0 голосов
/ 07 июня 2018

У меня есть следующая таблица:

+---------+------------+----------------+
| IRR     | Price List | Cambrdige Data |
+=========+============+================+
| '1.56%' | '0'        | '6/30/1989'    |
+---------+------------+----------------+
| '5.17%' | '100'      | '9/30/1989'    |
+---------+------------+----------------+
| '4.44%' | '0'        | '12/31/1990'   |
+---------+------------+----------------+

Я пытаюсь написать калькулятор, который обновляет поле Price List, делая простые вычисления.Логика в основном такова:

предыдущая цена * (1 + IRR%)

Итак, для последней строки расчет будет: 100 * (1 + 4.44%) = 104,44

Поскольку я использую petl, я пытаюсь выяснить, как обновить поле с указанным выше значением и значением из той же строки, а затем заполнить его по всему столбцу Price List.Я не могу найти полезную утилиту petl для этого.Должен ли я просто вручную написать метод?Что вы, ребята, думаете?

1 Ответ

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

Попробуйте это:

# conversion can access other values from the same row    

    table = etl.convert(table, 'Price List',
                               lambda row: 100 * (1 + row.IRR),
                               pass_row=True)
...