Предположим, я управляю многими брокерскими акциями, каждая из которых имеет разные типы акций. Я пытаюсь написать код для проведения стресс-теста.
То, что я пытаюсь сделать, у меня есть 2 кадра данных:
Информация об учетной записи (датафрейм):
account = {'account':['1', '1', '1', '2', '2'], 'Stock type':['A', 'A', 'B', 'B', 'C'], 'share value' = '100', '150', '200', '175', '85']}
сценарий стресс-теста (датафрейм):
test = {'stock type':['A', 'B', 'C', 'D'], 'stress shock':['0.8', '0.7', '0.75', 0.6']}
Учитывая эти 2 кадра данных, я хочу рассчитать для каждой учетной записи, какова стоимость акций после стрессового шока.
т.е. для счета № 1 после значения шока = 100 * 0,8 + 150 * 0,8 + 200 * 0,7 = 340
Я пробовал некоторые базовые циклы for, но мой ноутбук jupyter скоро сломается (не хватит памяти) после запуска.
shocked = []
for i in range(len(account)):
for j in range(len(test)):
if account.loc[i,'Stock type'] == test.loc[j,'stock type']:
shocked.append(account.loc[i,'share value']*test.loc[j, 'stock type']